Part Number Hot Search : 
28F00 58128 AN8031 PTC60 MM1ZB33H KBPC3 HER105 BZT11
Product Description
Full Text Search
 

To Download 5962F0150201QXA Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  standard products ut1750ar radhard r isc microprocessor data sheet may 2003 features q operates in either risc (reduced instruction set computer) mode or mil-std-1750a mode q supports mil-std-1750a 32-bit floating-point operations and 48-bit extended-precision f loating-point operations on chip q built-in 9600 baud uart q supports defined mil-std-1750a console mode of operation q full 64k-word address space. expandable to 1m words with optional mmu (operand port) q register-oriented architecture has 21 user-accessible registers q registers may be in 16-bit word or 32-bit double-word configurations q built-in multiprocessor bus arbitration and direct memory access support (dma) q ttl-compatible i/o q stable 1.5-micron cmos technolog y q full military operating range, -55 c to +125 c, in accordance with mil-prf-38535 for class q and v q typical radiation performance - total dose: 1.0e6 rads(si) - sel immune . 100 mev-cm 2 /mg - let th (0.25) = 60 mev-cm 2 /mg - saturated cross section (cm 2 ) per bit, 1.2e-7 - 2.3e-11 errors/bit-day, adams to 90% geosynchronous heavy ion q standard military drawing 5962-01502 proces- sor status figure 1. ut1750ar functional block diagram oe we brq bgnt busy bgack nui1 nui2 m1750 state1 mme console risc data risc address sysfl bterr mpar mprot pfail iolint1 iolint0 int0-5 mrst 16 risc add mux risc memory control bus arbitra- tion processor control logic oscillator /clock general purpose registers oscin oscout sysclk ir ic/ics acc shift reg temp dest 16 temp src bit reg a mux b mux 32-bit alu 16 16 addr mux bus control uart tbr rbr timclk test uartout uartin tr tb im fr pi st sw 16 8 as0-3 operand data dtack m/ io r/ wr ds operand address i/o mux 16 6 32 32 32 32 32 32 32 32 nuo3 pipeline pr op/ in as 1750 pc 32 1750 sp risc map 4 4 ps0-3 16 16 16 16 16 16 16 i n t e r r u p t s 16 risc address or o/p disc
2 ds as r/wr m/io dtack op/in bgack busy bgnt brq sysflt we oe mrst iolint1 iolint0 pfail int0 int1 int2 int3 int4 int5 test exceptions interrupts/ risc data port oscin oscout uartin uartout timclk ut1750ar ra19/cs ra18/od1 ra17/od2 ra16/od3 ra15 ra14 ra13 ra12 ra11 ra10 ra9 ra8 ra7 ra6 ra5 ra4 ra3 ra2 ra1 ra0 nui1 m1750 bterr mpar mprot a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 a15 nuo3 ps3 ps2 ps1 ps0 as3 as2 as1 sysclk risc address bus processor status oscillator uart data bus memory address bus clock mode bus control bus arbitration as0 figure 2. ut1750ar pin function diagram mme console state1 rd0 - rd15 d0 - d15 operand operand nui2
3 general description the ut1750ar (figures 1 and 2) is a high performance monolithic cmos 16-bit risc microprocessor that supports the complete mil-std-1750a instruction set architecture (isa). underlying the mil-std-1750a support is a high- performance risc that provides mil-std-1750a emulation capability. developed to provide effective real-time avionics processing, the high performance of the native risc machine is available to the mil-std-1750a systems designer through the mil-std-1750a built-in-function (bif) opcode. the ut1750ar is the first member of a family of high- performance mil-std-1750 processors and support peripherals from utmc. product description the utmc ut1750ar operates in its native risc language mode or mil-std-1750a isa mode. as a mil-std-1750a microprocessor, the ut1750ar requires 8k x 16 of rom to map the mil-std-1750a instruction set into the native risc machine language instructions. each mil-std-1750a opcode has a unique risc code macro in the external rom. the ut1750ar executes the corresponding resident risc code macro to perform the mil-std-1750a instruction requirements. when in this mode and operating with a 12 mhz clock, the ut1750ar can throughput 600 kips using the dais mix (800 kips @ 16 mhz). the native risc language mode is available to the user when the ut1750ar is operating as mil-std-1750a processor through mil- std-1750a?s built-in function (bif) opcode. when operating as a risc processor, the ut1750ar executes most risc instructions in two clock cycles. thus, a 12 mhz operating clock frequency provides up to 6 mips of risc throughput (8 mips @16 mhz). this high execution rate, along with its efficient architecture, make the risc mode especially effective in applications requiring real-time processing. the architecture of the ut1750ar is based around 20 user- accessible, 16-bit general purpose registers providing the programmer with extensive register support. the ut1750ar?s flexibility is enhanced by its ability to concatenate the 16-bit registers into ten 32-bit registers. in addition, all registers are available for use as either the source or the destination for any register operation. the ut1750ar fully supports multiprocessor, dma, and complex bus arbitration for managing the system bus and preventing bus contention. bus control passes among bus masters operating on the same bus. the bus masters can be several ut1750ars or any other device requiring direct memory access, such as a mil-std-1553b interface. the ut1750ar supports 16 levels of vectored interrupts. ten of these are external interrupts, eight of which are user- definable. all 16 interrupt levels are prioritized and serviced in order of priority. when used as a mil-std-1750a microprocessor, the ut1750ar?s instruction set supports 16-bit fixed-point single- precision and 32-bit fixed-point double-precision data formats. also, the ut1750ar can emulate 32-bit floating-point and 48- bit floating-point extended-precision data in two?s complement representation. in its native risc mode, the ut1750ar?s three basic instruction formats support 16-bit and 32-bit instructions. the formats are register-to-register, register-to-literal, and register-to-long-immediate instructions. figure 3 shows the ut1750ar?s general system architecture, its emulation rom, instruction and data memory, and the system interface. the emulation rom is isolated from the system; only the ut1750ar microprocessor accesses it. memory mil-std-1750a 16 16 16 16 address operand figure 3. ut1750ar mil-std-1750a general system architecture control data operand (8k x 16) rom emulation risc address risc data ut1750ar instructions data
4 functional pinout legend for type and active fields: to = ttl output ti = ttl input tui = ttl input (pull-up) tdi = ttl input (pull-down) tto = three-state ttl output ttb = three-state ttl bidirectional co = cmos output osc = oscillator input to a pierce oscillator inverter ah = active high al = active low oscin 50 p14 osc oscillator and clock signals pin name pin number fltpk pga type active description oscout sysclk 51 52 p15 m14 co to oscillator input. a 50% duty cycle crystal-drive input for driving the ut1750ar. oscillator output. a 50% duty cycle, single-phase clock output at the same frequency as the oscin input. system output. the buffered equivalent of the oscout signal. nui1 129 h2 ti processor status pin name pin number fltpk pga type active description nui2 nuo3 44 126 p12 g3 tui tto not used input 1. internal utmc use only. tie either high or low. not used input 2. internal utmc use only. tie low. not used output 3. internal utmc use only. nuo3 enter high impedance state when the ut1750ar is in the test mode ( test =0) -- -- -- m1750 45 n11 tdi ah state1 mode select risc/1750. a high on m1750 places the ut1750ar into the mil-std-1750a emulation mode. a low on m1750 places the ut1750ar into the risc mode. it is tied to an internal pull-down resistor. 54 n15 tto processor state. this signal indicates the internal state of the ut1750ar. a low on state1 indicates the ut1750ar is executing a new risc instruction. a high on state1 indicates the ut1750ar is fetching a risc instruction. state1 enters a high-impedance state when the ut1750ar is in the test mode ( test =0). -- -- -- --
5 operand/instruction. this indicates whether the ut1750ar?s current bus cycle is for data (high) or instruction (low) acquisition. op/in remains in a high state whenever a bus cycle (memory or i/o) is not an instruction fetch. brq 118 d2 tto operand data bus arbitration pin name pin number fltpk pga type active description bgnt busy 119 120 e3 c1 tui tui bus request. the ut1750ar asserts this signal to indicate it is requesting control of the operand data bus (d0 - d15). brq enters a high-impedance state when the ut1750ar is in the test mode ( test = 0). bus grant. when asserted, this signal indicates the ut1750ar may take control of the operand data bus. it is tied to an internal pull-up resistor. bus busy. a bus master asserts this input to inform the ut1750ar that another bus master is using the operand data bus. it is tied to an internal pull-up resistor. op/in 113 a2 tto operand data bus control pin name pin number fltpk pga type active description dtack m/io 121 112 e2 b3 tui tto data transfer acknowledge. this signal tells the ut1750ar that a data transfer has been acknowledged and the ut1750ar can complete the bus cycle. to assure the ut1750ar operates with no wait states, dtack can be tied low. dtack is tied to an internal pull-up resistor. memory or i/o. indicates whether the current bus cycle is for memory (high) or i/o (low). it remains in the high- impedance state during bus cycles when the ut1750ar does not control the operand busses. al bgack 117 b1 tto al al al al bus grant acknowledge output. the ut1750ar asserts this signal to indicate it is the current bus master. when low, bgack inhibits other devices from becoming the bus master. when the ut1750ar relinquishes control of the bus, bgack enters a high-impedance state. r/wr 114 c4 tto read/write. indicates the direction of data flow with respect to the ut1750ar. r/ wr high means the ut1750ar is attempting to read data from an external device, and r/ wr low means the ut1750ar is attempting to write data to an external device. r/ wr remains in a high-impedance state when the ut1750ar does not control the operand busses. continued on page 6. -- -- --
6 output enable risc memory. this signal allows risc memory to place data on the risc instruction data bus. the store register to instruction memory (stri) instruction removes oe during the ck2 internal clock cycle. oe enters a high-impedance state when the ut1750ar is in the test mode ( test = 0). as 115 c3 tto operand data bus control pin name pin number fltpk pga type active description ds 116 b2 tto address strobe. indicates a valid address on the operand address bus. ut1750ar places as in a high-impedance state when it does not control the operand busses. data strobe. indicates valid data is on the operand data bus. the ut1750ar places ds in a high-impedance state when it does not control the operand busses. oe 42 r12 tto risc memory control pin name pin number fltpk pga type active description we 43 r13 tto write enable risc memory. this signal allows the ut1750ar to write to risc instruction memory. the store register to instruction memory (stri) instruction asserts we during the ck2 internal clock cycle. we enters a high-impedance state when the ut1750ar is in the test mode ( test = 0). al al al continued from page 5. al uart control/timer clock uartin 127 f1 tui pin name pin number fltpk pga type active description uartout 128 g1 tto ah ah uart input. the ut1750ar receives serial data through this input. the serial data is stored in the ut1750ar?s receiver buffer register (rcvr). it is tied to an internal pull-up resistor. uart output. the serial data stored in the ut1750ar?s transmitter buffer register (txmt) is transmitted through this output. the uart output is fixed at 9600 baud, with eight data bits, odd-parity, and one stop bit. uartout enters a high-impedance state when the ut1750ar is in the test mode ( test =0). (9600 baud @ timclk = 12mhz) continued on page 7.
7 test (input). asserting this input places the ut1750ar into a test mode. in this mode, all the ut1750ar?s outputs, except oscout and sysclk, enter a high- impedance state. when using test , the ut1750ar must have a mrst . mrst must be held active for at least one sysclk period after test is deasserted to assure proper operation (see figure 42b). test is tied to an internal pull-up resistor. timclk 53 l13 ti uart control/timer clock pin name pin number fltpk pga type active description console 48 n12 tdi timer clock. this 12 mhz clock input generates the baud rate for the ut1750ar?s internal uart. the input also provides the clock for the ut1750ar?s two internal mil- std-1750a timers (timer a and timer b). console (command). asserting this input sets bit 3 in the system status register. bit 3 is read with the input register instruction (inr). when the ut1750ar is operating in the mil-std-1750 mode, asserting console during a master reset invokes the maintenance console option. tied to an internal pull-down resistor. test 46 p13 tui mme 49 n13 tdi ah memory management enable. this signal indicates to the ut1750ar that a memory management unit (mmu) is present and that the memory management option is enabled. mme is tied to an internal pull-down resistor. ah al processor mode as0 104 b7 tto pin name pin number fltpk pga type active description ps0 108 a4 tto ah ah address state. these outputs indicate the current address state of the ut1750ar. using these outputs with a memory management unit (mmu) allows selecting the mmu?s page register group. these outputs enter a high-impedance state when the ut1750ar is placed in the test mode ( test =0) or during bus cycles not assigned to this processor. processor state. these outputs indicate the current state of the processor. these outputs enter a high-impedance state when the ut1750ar is in the test mode ( test =0) or during bus cycles not assigned to this processor. as1 as2 as3 105 106 107 b6 c6 a5 ps1 ps2 ps3 109 110 111 a3 b4 c5 -- continued from page 6
8 memory parity (error). asserting this input indicates a mil-std- 1750 memory parity error. bit 13 of the ut1750ar?s fault register, memory parity fault, is set when mpar is active. under no circumstances should mpar be tied in its active state. it is tied to an internal pull-down resistor. interrupt is not cleared via software until the negation of the input signal. sysflt 125 g2 tui interrupts/exceptions pin name pin number fltpk pga type active description bterr 122 d1 tui system fault. this positive edge-triggered input sets bit 8 (sysflt) in the ut1750ar?s fault register. under no circumstances should sysflt be tied in its active state. it is tied to an internal pull-up resistor. mpar bus time error. it is asserted when a bus error or a timeout occurs. during i/o bus cycles, an active bterr sets bit 10 of the fault register. during memory bus cycles, an active bterr sets bit 7 of the fault register. under no circumstances should bterr be tied in its active state. it is tied to an internal pull-up resistor. interrupt is not cleared via software until the negation of the input signal. 124 f2 tdi mprot 123 f3 tui ah memory protect fault. when asserted, it informs the ut1750ar that a memory-protect fault has occurred on the operand data bus. an access fault, a write-protect fault, or an execute-protect fault causes a memory-protect fault. if the ut1750ar is using the bus and mprot is asserted, bit 15 of the fault register (cpu fault) is set. if the ut1750ar is not using the bus and mprot is asserted, bit 14 of the fault register (dma error) is set. it is tied to an internal pull-up resistor. interrupt is not cleared via software until the negation of the input signal. al ah int0 56 m15 tui iolint0 62 j15 tui user interrupts. these interrupts are active on a negative- going edge and each will set, when active, its associated bit in the pending interrupt register. the interrupts are maskable by setting the associated bits in the interrupt mask register. asserting mrst resets all interrupts. they are tied to an internal pull-up resistor. i/o level interrupts. these inputs are active on a negative- going edge and each sets, when active, its associated bit in the pending interrupt register. the interrupts are maskable by setting the associated bits in the interrupt mask register. asserting mrst resets all interrupts. they are tied to an internal pull-up resistor. int1 int2 int3 int4 int5 57 58 59 60 61 k13 k14 j14 j13 k15 iolint1 63 h14 pfail 55 l14 tui al power fail (interrupt). asserting this input informs the ut1750ar that a power failure has occurred and the present process will be interrupted. this input sets bit 15 in the pending interrupt register. a power fail interrupt (bit 15) cannot be disabled. when operating in the risc mode, the ut1750ar must be reset after a pfail to assure normal operation. it is tied to an internal pull-up resistor. mrst 47 r14 tui al master reset. this input initializes the ut1750ar to a reset state. the ut1750ar must be reset after power (vcc) is within specification and stable to ensure proper operation. the system must hold mrst active for at least one period of sysclk to assure the ut1750ar will be reset. it is tied to an internal pull-up resistor. ah al al
9 a0 84 a14 tto operand busses pin name pin number fltpk pga type active description address bus - operand. when asserted, this bus is unidirectional and represents the operand address. the bus is in the high-impedance state when the ut1750ar does not control the bus. a15 is the most significant bit. the operand address enters a high-impedance state when the ut1750ar is in the test mode ( test = 0). d0 64 h15 ttb data bus - operand. this bidirectional data bus remains in a high-impedance state when the ut1750ar does not control the bus. d15 is the most significant bit. the operand data bus enters a high-impedance state when the ut1750ar is in the test mode ( test = 0). -- ra0 18 r2 tto risc (instruction) address bus. this unidirectional bus represents the address of the data in risc memory. with the mil-std-1750a mode of operation selected (m1750 = 1), the data from risc memory is from the emulation roms. this data is the risc instructions that the ut1750ar executes to emulate mil-std-1750a instructions. ra15 is the most significant bit. the risc address enters a high-impedance state when the ut1750ar is in the test mode ( test = 0). a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14 a15 85 86 87 88 89 90 91 92 93 94 95 96 97 102 103 b12 c11 a13 b11 a12 c10 b10 b9 c9 a10 a9 b8 a8 a7 a6 d1 d2 d3 d4 d5 d6 d7 d8 d9 d10 d11 d12 d13 d14 d15 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 g15 f15 g14 f14 f13 e15 d15 c15 d14 e13 c14 b15 d13 c13 b14 -- risc busses pin name pin number fltpk pga type active description ra1 ra2 ra3 ra4 ra5 ra6 ra7 ra8 ra9 ra10 ra11 ra12 ra13 ra14 ra15 19 20 21 22 23 24 25 26 27 28 29 30 31 36 37 p4 n5 r3 p5 r4 n6 p6 p7 n7 r6 r7 p8 r8 r9 r10 -- continued on page 10.
10 ra16/od3 38 p9 tto pin name pin number fltpk pga type active description rd0 risc instruction address bus/output discretes. when the ut1750ar is operating in the risc mode (m1750 = 0) these four bits represent the four most significant address bits. in the mil- std-1750a mode (m1750 = 1) these four bits are user-programmable output discretes defined as follows: ra19/ cs = chip select (al) ra18/od1 = output discrete 1 ra17/od2 = output discrete 2 ra16/od3 = output discrete 3 these output discretes are programmed with the output register (otr) risc opcode. these signals enter a high- impedance state when the ut1750ar is in the test mode ( test = 0). 130 h1 ttb -- risc instruction data bus. this bidirectional data bus is the interface with the risc memory. when the ut1750ar is in the mil-std-1750a mode of operation, the data comes from the emulation roms. this data is executed to emulate the mil-std-1750a instruction set. rd15 is the most significant bit. the risc data bus enters a high-impedance state only when the ut1750ar is in the test mode ( test = 0). v 34 h3 +5 vdc power. power supply input. -- risc busses pin name pin number fltpk pga type active description ra17/od2 continued from page 9. ra18/od1 ra19/cs 39 40 41 p10 n10 r11 rd1 rd2 rd3 rd4 rd5 rd6 rd7 rd8 rd9 rd10 rd11 rd12 rd13 rd14 rd15 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 j1 k1 j2 k2 k3 l1 m1 n1 m2 l3 n2 p1 m3 n3 p2 67 100 132 n9 g13 c7 j3 n8 h13 c8 power and ground v 1 33 66 99 reference ground. zero vdc logic ground. -- -- -- -- dd ss
11 general operation the ut1750ar can operate in two modes. the first operating mode is the reduced instruction set computer (risc) mode; the second is the mil-std-1750a instruction set architecture (isa) emulation mode. the mode-select input pin (m1750) determines the ut1750ar?s operating mode. m1750 must be tied high to enable the mil-std-1750a isa emulation mode of operation; otherwise, an internal pull-down resistor pulls m1750 low, selecting the risc mode. the ut1750ar has a harvard architecture when it operates in the risc mode (m1750 = 0). a processor with a harvard architecture has two sets of address and data busses; one set interfaces with instruction memory and the other set interfaces with operand memory. this architecture allows the ut1750ar to perform overlapping instruction fetch-and-execute bus cycles that enhance processor throughput. the ut1750ar?s reduced instruction set consists of 30 separate instructions. the ut1750ar executes most of these instructions in two clock cycles providing fast execution of risc-coded programs. all the ut1750ar?s processing capabilities in the risc mode are available to the system programmer by using the companion risc assembler (rasm)/linker (rlnk), risc interactive software simulator (irsim), and hardware development debug tools. in the mil-std-1750a mode of operation (m1750 = 1), the ut1750ar has a von neumann architecture. a processor with a von neumann architecture has a common set of address and data busses that make instructions and operand data available to the processor. the ut1750ar emulates the mil-std-1750a instruction set when it has a specially programmed set of risc proms. these proms contain risc-coded macros that correspond to each mil-std-1750 instruction. when the ut1750ar fetches a 1750 instruction from memory, it decodes this instruction?s opcode and generates an address for the risc proms. this address points to a risc macro that, when executed, performs the operation the 1750 instruction requires. the high execution rate of the ut1750ar?s native risc language is also available when the ut1750ar is in the mil- std-1750 mode of operation by using the mil-std-1750 built-in-function (bif) opcode. the system designer can develop a risc macro for a specific function, such as power- on self-test routines, built-in-test routines, signal-processing routines, or any routine that requires real-time processing. the ut1750ar executes this function when it encounters the bif in the mil-std-1750 program flow. the risc mode of operation the configuration for the ut1750ar in the risc mode of operation is shown in figure 4. risc is the default mode of operation for the ut1750ar since the m1750 input is tied to an internal pull-down resistor. when the ut1750ar operates in the risc mode, the system designer stores the executable risc program in risc memory. the utmc risc assembler generates this executable risc program. all 20 of the risc address lines can access a user- defined program in risc memory. this means the maximum length of any risc program is 1 mega- word. although the executable risc program is all that is stored in risc memory, two risc instructions allow the programmer to manipulate the data in risc memory. these instructions are the load register from (risc) instruction memory (lri) and the store register to (risc) instruction memory (stri). when operating in the risc mode, the ut1750ar first generates an address on the risc address bus for the instruction it stores in the primary instruction register (pir). after the ut1750ar stores the risc instruction in the pir, the ut1750ar begins executing the instruction in the instruction register (ir). if the present instruction in the ir requires only internal processing, the ut1750ar does not exercise the operand address and data busses. if, on the other hand, the instruction in the ir requires some type of operand data, the ut1750ar begins an operand bus arbitration cycle midway through the next processor clock cycle. the operand bus arbitration cycle begins with the ut1750ar asserting the bus request ( brq ) signal. the ut1750ar samples the bus grant ( bgnt ) and the bus busy ( busy ) signals on every falling edge of the processor clock. when the ut1750ar detects that the previous bus controller has relinquished control of the bus, the ut1750ar generates the bus grant acknowledge ( bgack ) signal signifying that it has taken control of the bus. after the ut1750ar has taken control of the bus, it generates the operand address and data. the address strobe ( as ) and data strobe ( ds ) signals indicate when the operand address and data are valid. if the ut1750ar is interfacing to slow memory or other peripheral devices that require long memory- access times, the data transfer acknowledge ( dtack ) signal extends the memory cycle time. by holding off the assertion of dtack , the slow memory device lengthens the memory cycle until it can provide data for the ut1750ar.
12 all user-definable interrupts are available when the ut1750ar is operating as a risc. in addition, the system programmer can read or write to virtually all of the ut1750ar?s internal registers, either general purpose or specialized, when the ut1750ar is in the risc mode by using the internal i/o command (inr) or the output register command (otr), respectively. the 1750a mode of operation the configuration for the ut1750ar in the mil-std-1750a mode of operation is shown in figure 5. the ut1750ar enters the 1750 mode of operation when the mode input, m1750, is pulled high. the functional operation of the ut1750ar in the mil-std- 1750 mode is similar to the risc mode of operation, although it has two important differences. the first difference is that when the system designer selects the mil-std-1750 mode, the ut1750ar requires a specific set of risc proms specially programmed to allow the ut1750ar to emulate the 1750 isa. this special set of risc proms contains a set of risc-coded macros that allow the ut1750ar to serve as a full-feature mil- std-1750a microprocessor. in this respect, the risc proms hold external microcode, or ?mili?-code. this ?mili?-code tells the ut1750ar how to function as a 1750 processor and, if necessary, the user can change the ?mili?-code if the application requires additional capability for real-time processing. the second difference between the operation of the ut1750ar in the 1750 mode and the risc mode is that in the 1750 mode the risc address bus is limited to 16 address lines or 64k words instead of the ut1750ar?s 20-bit risc address bus in the risc mode. when in the 1750 mode, the ut1750ar uses the four most significant bits of the risc address bus for output discretes. the output discrete that replaces the most significant address bit (ra19) is a dedicated chip select. risc data risc add 16 20 m1750 user- defined system interrupts 8 uart i/f x c v r general purpose memory i/o device #1 i/o device #2 bus arbiter dma device #1 1553 i/f dma device #2 op add op data control brq bgnt busy bgack 16 16 6 figure 4. the ut1750ar in the risc mode of operation 4 ut1750ar risc instruction memory can only be accessed by the ut1750ar oe we risc memory 1m x 16 (max) internally pulled low serial i/o
13 the next three risc address bits (ra16-ra18) are user- definable discrete outputs. these outputs are defined as: ra16/od3 dma enable ( dmaen ) ra17/od2 power-up ( good ) ra18/od1 start-up rom enable ( suren ) after reset these signals will be in the following states: ra16 1, ra17 0, ra18 0. when the ut1750ar operates in the mil-std-1750 mode, it generates an address on the operand address bus for the next 1750 instruction. if the ut1750ar has just been initialized or has just been reset, the first memory location placed on the operand address bus is 0000h; this instruction is the first one fetched from the 1750 memory. after this instruction is fetched and entered into the ut1750ar, the ut1750ar uses the opcode to ?map? or point to a specific address in the risc memory. since the risc prom programming provides 1750 emulation capability, this address in risc memory contains a specific risc-coded macro allowing the ut1750ar to perform the requisite 1750 function. when the ut1750ar begins executing this risc macro for 1750 emulation, the ut1750ar begins to operate as if it were in the risc mode (see the previous section on risc mode of operation). the processor cycles of all the risc instructions that make up the particular macro are executed as if the ut1750ar were operating purely as a risc. during risc macro execution for the mil-std-1750 instruction, the internal registers of the ut1750ar hold the intermediate results from the execution of the risc instructions. when the macro is complete, the ut1750ar?s registers contain the data the mil-std-1750a instruction requires. if the ut1750ar receives an interrupt during risc macro execution, the risc macro completes execution before the ut1750ar recognizes the interrupt. this is similar to completing a single 1750 instruction rather than allowing its interruption. the only exception is with the multiple-word mov 1750 instruction. for this instruction, the ut1750ar interrupts macro execution after transferring the current word. after the risc macro is complete, all the ut1750ar?s internal registers, including the status registers and/or memory locations, contain the results of the mil-std-1750a instruction that has just completed execution. the ut1750ar now fetches the next 1750 instruction from operand memory and the process repeats. risc data risc add 16 16 m1750 user- defined system interrupts 8 uart i/f x c v r 1750 program/data memory i/o device #1 i/o device #2 bus arbiter dma device #1 1553 i/f dma device #2 op add op data control brq bgnt busy bgack 16 16 6 figure 5. the ut1750ar in the mil-std-1750 mode of operation 4 ut1750ar contains risc macros to 1750 mil-std-1750 emulate the mil-std-1750a isa emulation rom (8k x 16) +5v programmer?s console
14 the advanced architecture of the ut1750ar allows the system designer to define risc macros accessible through the mil- std-1750a built-in function (bif) opcode. these user- defined risc macros can be any regularly-used function requiring the ut1750ar?s high-speed, real-time processing capabilities. the ut1750ar fetches the bif instruction from operand memory just like any other 1750 instruction; it then decodes the bif. the resulting ut1750ar-generated risc address points to the location of the user-defined macro in risc memory. risc macro execution proceeds just as it would for any other 1750 instruction. mil-std-1750a permits the system designer to define up to 256 bif variations. register architecture the ut1750ar has a register-oriented architecture (figure 1). the registers within the ut1750ar fall into two categories: general purpose registers, and specialized registers. all the ut1750ar?s registers are accessible to the programmer through the risc instruction set. the programmer uses data from these registers to perform arithmetic and logical functions, alter program flow, detect various system and processor faults, determine processor status, provide control for uart and timer functions, and provide interrupt processing and exception- handling control. general purpose registers figure 6 shows the ut1750ar?s 20 general purpose registers. all risc instructions use these registers; any register or register pair can be either the source or the destination for any risc instruction. the ut1750ar normally accesses these registers as single-word 16-bit registers although the ut1750ar can concatenate these registers into 32-bit double-word register pairs. when the programmer uses the general purpose registers as a double-word register pair, the most significant 16 bits of the 32-bit words are stored in the even-numbered register of the register pair. for instance, if a 32-bit word is stored in register pair xr6, the most significant word is stored in register r6 and the least significant word is stored in register r7. in addition to the 20 general purpose registers, the ut1750ar has a 32-bit accumulator (acc). the acc is normally a destination register, although under certain circumstances it can be the source register. the accumulator retains the most significant half of the product during a multiply instruction or the remainder during a divide operation. specialized registers the ut1750ar has 16 special purpose registers (figures 7 through 24). the values in the brackets indicate the power-up condition. they are: 1. stack pointer register (sp) [xxxx 16 ] 2. system status register (status) 3. uart receiver buffer register (rcvr) [xx0016] 4. uart transmitter buffer register (txmt) [xx00 16 ] 5. pending interrupt register (pi) [0000 16 ] 6. fault register (ft) [0000 16 ] 7. interrupt mask register (mk) [xxxx 16 ] 8. 1750 status register (sw) [0000 16 ] 9. risc instruction counter register (ic) [00000 16 ] 10. risc instruction counter save register (ics) [xxxxx 16 ] 11. risc instruction register (ir) [0000 16 ] 12. 1750 pipeline register (pipe) [xxxx 16 ] 13. 1750 program register (pr) [xxxx 16 ] 14. 1750 program counter (pc) [xxxx 16 ] 15. 1750 timer a register (ta) [0000 16 ] 16. 1750 timer b register (tb) [0000 16 ] the risc instruction set provides access to most of the special purpose registers. the stack pointer register figure 7. the ut1750ar uses the 16-bit stack pointer register as an address pointer on push and figure 6. general register set concatenated 32-bit acc xr18 xr16 xr14 xr12 xr10 xr8 xr6 xr4 xr2 xr0 r19 r17 r15 r13 r11 r9 r7 r5 r3 r1 accumulator r6 r18 r16 r14 r12 r10 r8 r4 r2 r0 register pair 16 bits 16 bits 15 14 13 12 11 10 9 8 7 5 4 3 2 1 0 s p 1 5 s p 1 4 s p 1 3 s p 1 2 s p 1 1 s p 1 0 s p 9 s p 8 6 s p 6 s p 7 s p 5 s p 4 s p 3 s p 2 s p 1 s p 0 msb lsb figure 7. the stack pointer register (sp)
15 pop instructions. when the ut1750ar is operating in the risc mode, it pre-increments (pops) and post-decrements (pushes) the sp. in the 1750 mode, the ut1750ar pre-increments (pops) and post-increments (pushes) the sp. the programmer accesses the sp by using local i/o commands to load and store the stack pointer. the system status register figure 8. the system status register provides additional status information on the ut1750ar?s internal signals, including the status of the internal uart. the bit definitions for status are given below. bit definitions all bits in the system status register are active high. the values in the brackets indicate the power-up state. bit number mnemonic description 15 c carry. this conditional status is set if a carry generated. [0] 14 p positive. this conditional status is set if the result of operation is positive. [0] 13 z zero. this conditional status is set if the result of an operation is equal to zero. [0] 12 n negative. this conditional status is set if the result of a n operation is negative. [0] 11 v overflow. this conditiona l status is set when an overflow condition occurs. [0] 10 j normalized. this conditional status is set as the result of a long instruction. [0] 9 ie interrupts enabled. [0] 8 mme memory management enabled. [0] 7 re receiver error. this bit is the logical or combination of the oe, fe, and pe status bits. [0] 6 oe overrun error. when active, this bit indicates that at least one data word was lost because the data ready (dr is bit 0 o f the status) signal was active twice consecutively without an rbr read. [0] 5 fe framing error. when active, this bit indicates a stop bit was missing from the serial transmission. [0] 4 pe parity error. when active, this bit indicates the serial transmission was received with the i ncorrect parity. [0] 3 cn mil-std-1750a console enabled. when active, this bit indicates the console discrete input is active. console active sets bit 3 in the system status register. 2 tbe uart transmitter buffer empty. this bit indicates the transmitter buffer register is empty and ready for data. [0] 1 te uart transmitter empty. t his bit is low while the uart is transmitting data and goes high when the transmission is complete. [0] 0 dr uart data ready. this active-high signal indicates the uart received a serial data word and this data is available. [0] 15 14 13 12 11 10 9 8 7 5 4 3 2 1 0 c p z n v j i m m e 6 o e r e f e p e c n t b e t e d r msb lsb figure 8. the system status register (status) e
16 uart receiver register (rcvr) the uart receiver buffer register (see figure 9) receives 9600-baud asynchronous serial data through the uartin input pin on the ut1750ar. each serial data string contains an active- low start bit, eight data bits, an odd parity bit, and an active- high stop bit. figure 10 shows a single serial data string. while receiving a serial data string, the ut1750ar generates four status flags: data ready (dr); overrun error (oe); framing error (fe); and parity error (pe). the ut1750ar stores these status bits in the system status register (status). receiver buffer register bits 15-8 are always low. bit numbers 7-0 (rcd7-rcd0) contain data the ut1750ar receives via the serial data port. rcd7 is the msb; rcd0 is the lsb. uart transmitter buffer register (txmt) the ut1750ar?s internal uart forms an 11-bit serial data string by combining a start bit, the eight data bits from the transmitter buffer register (txmt), an odd parity bit, and a stop bit. figure 11 shows the composition of the serial data string. the ut1750ar transmits this serial data string through the uartout pin at a rate of 9600 baud. two status signals are associated with transmitting serial data. these signals are the uart transmitter buffer empty (tbe) and uart transmitter register empty (te). tbe and te are both active high and provide information on the status of double buffering the uart?s transmitted data. tbe and te are read from the system status register as bits 2 and 1, respectively. the ut1750ar?s internal uart has a double-buffered data transmission scheme (figure 12). the ut1750ar first loads the data for transmission into the transmitter buffer register. if the uart transmitter register is empty, data from the txmt automatically transfers to the uart transmitter register. at this time, the tbe bit goes active indicating more data may be loaded into the txmt. this double-buffering scheme allows contiguous transmission of serial data streams and also decreases the ut1750ar?s required overhead for the uart interface. 15 14 13 12 11 10 9 8 7 5 4 3 2 1 0 0 5 0 4 0 3 0 2 0 1 0 0 7 0 6 0 6 r c d r c d r c d r c d r c d r c d r c d r c d msb lsb figure 9. the uart receiver 5 4 t 3 r 2 0 1 s t d 7 r c d r c d r c 6 r c d r c d r c d r c d r c d p a s t o figure 10. uart receiver data string p r data flow 5 4 t 3 r 2 0 1 s t d 7 t x d t x d t x 6 t x d t x d t x d t x d t x d p a s t o figure 11. uart transmitter data string p r direction of data flow out of the ut1750ar figure 12. the ut1750ar uart double-buffered transmitter register register (otr) instruction tbr with an output data is loaded into the of the system status read from bit 1 transmitter register is status of the uart 8 register uart transmitter register (tbr) uart transmitter buffer 16 data bus the ut1750ar?s internal from bit 2 tbr is read status of the data flow direction of t r t s 0 1 2 3 4 5 6 7 x t x t x t x t x t x t x t x t r a p p o t s 0 1 2 3 4 5 6 d x t d x t d x t d x t d x t d x t d x t 7 d x t d c d c d c d c d c d c d c d c of the system register status register
17 the ut1750ar loads the eight bits of serial data into the lower eight bits of the txmt (figure 13). the pending interrupt register (pi) the pending interrupt register (pi) contains information on pending interrupts attempting to vector the instruction counter register (ic) to a new location. software or hardware controls the pi. any system interrupt, when active, sets the corresponding bit in the pi. risc i/o instructions can also set, clear, and read the pi (figure 14). the fault register (ft) the ut1750ar uses the fault register (ft) (figure 15) to indicate the occurrence of a machine-error fault. a machine- error fault cannot be disabled. the ut1750ar uses the logical or combination of the 16 ft bits to generate the machine error interrupt, bit 14 of the pi. any bits in the ft the ut1750ar does not use are set to a logic zero. the ut1750ar reads, loads, and clears the ft with risc i/o instructions. the configuration of the ft is shown in figure 15. bit definitions all bits in the fault register are active when high. bit number mnemonic description 15 cmpf cpu memory protect fault. this bit indicates the ut1750ar has detected an access fault, write-protect fault, or an execute-protect fault. [0] 14 dmpf dma memory protect fault. this bit indicates a dma device has detected an access fault or a write-protect fault. [0] 13 mpf memory parity fault. [0] 12 pcpf parallel i/o (pio) channel parity fault. [0] no user access. 11 dcpf dma channel parity fault. [0] no user access. 10 icf illegal command fault. this bit indicates an attempt to execute an unimplemented or reserved i/o command. [0] 9 ptf pio transmission fault. can wire-or i/o error-checking devices together and feed them into this input to indicate an error. [0] no user access. 8 sysflt system fault. [0] 7 iaf illegal address fault. this bit indicate s addressing a memory location not physically present. [0] 6 iif illegal instruction fault. this bit indicates an attempt to 15 14 13 12 11 10 9 8 7 5 4 3 2 1 0 d c 0 d c 5 d c 4 d c 3 d c 2 d c 1 d c d c 6 t x d t x d t x d t x d t x d t x d t x d t x d msb lsb figure 13. the uart transmitter 6 7 dc = don?t care 15 14 13 12 11 10 9 8 7 5 4 3 2 1 0 p w d n m c h e i n t o f l p o f i p o e x c l f l p t i m 6 t i m i n t i n t i n t i o l i n t i o l i n t msb lsb figure 14. the pending interrupt register (pi) u a 1 b 2 3 1 4 2 5 15 14 13 12 11 10 9 8 7 5 4 3 2 1 0 mem parity i/o s y f 6 illegal t r e s built- msb lsb figure 15. the fault register (ft) prot instruc- tion and add fault in- test
18 execute a reserved code. [0] 5 pif privileged instruction fault. this bit indicates an attempt to execute a privileged instruction with the processor state not equal to zero. [0] 4 asf address state fault. this bit indicates an attempt to establish an address state value for an unimplemented page register set. [0] 3 reserved. 2 bitf built-in-test fault. this bit indicates the ut1750ar has detected a hardware built-in- test error. [0] 1 - 0 spare bit. the user defines these bits as additional bit parameters. [0] the interrupt mask register (mk) the interrupt mask register (mk) (figure 16) contains one mask bit for each of the 16 system interrupts. all bits in the mk are set or reset under software control, although setting bits 15 and 10, power down interrupt and executive call respectively, has no effect on the ut1750ar?s operation because these interrupts cannot be masked. the ut1750ar reads or loads the mk with risc i/o instructions. the 1750 status word register (sw) the mil-std-1750a instruction set architecture (isa) defines the status word register (sw). the ut1750ar reads and loads the sw with risc i/o instructions. figure 17 shows the definitions of various bits in the sw. bit definitions bit number mnemonic description 15 c carry. this bit is set if the result of an addition operation generates a carry or if the result of a subtraction generates no borrow. 14 p positive. this bit is set if the result of an operation is greater than zero. 13 z zero. this bit is set if the result of an operation is equal to zero. 12 n negative. this bit is set if the result of an operation is less than zero. 11 - 8 reserved bits. 7 - 4 ps3 - processor state. this ps0 four bit field determines the legal illegal criteria for privileged instructions. 3 - 0 as3 - address state. used in as0 conjunction with the optional ut1750 mmu memory management unit, this four- bit field determines the current extended address page. note: if condition codes are turned on (default after reset) the condition codes reflect the corresponding bits in the status register. 15 14 13 12 11 10 9 8 7 5 4 3 2 1 0 p w d n m c h e i n t o f l p o f i p o e x c l f l p t i m 6 t i m i n t i n t i n t i o l i n t i o l i n t msb lsb figure 16. the interrupt mask register (mk) u a b 1 2 3 1 4 2 5 15 14 13 12 11 10 9 8 7 5 4 3 2 1 0 condition reserved 6 processor address msb lsb figure 17. the 1750 status register (sw) status state state (cs) (ps) (as)
19 the risc instruction counter register (ic) and the risc instruction register (ir) the ut1750ar?s risc interface consists of a 20-bit instruction address and a 16-bit data bus. the risc instruction counter register (ic) supplies the 20-bit address to risc memory. the risc?s instruction data that is read from memory is then input into the risc?s instruction register (ir). the ir consists of two sets of latches, a primary instruction register latch (pir) and the instruction register latch (irl). these two sets of latches allow the ut1750ar to perform overlapping memory fetch and execute cycles. this means the ut1750ar performs a delayed branch when the flow of the program is interrupted. a delayed branch implies that the ut1750ar fetches and executes the instruction following the branch condition before the ut1750ar executes the first instruction at the branch location. the risc instruction register (ir) is made of two 16-bit latches: the primary instruction register (pir) latch, and the instruction register (irl) latch. the risc instruction counter save register (ics) the ut1750ar uses the risc?s instruction counter save register (ics) (figure 20) when servicing interrupts and branch instructions. when an interrupt or branch occurs, the ut1750ar saves the ic in the ics. read the ics immediately after entering the target routine so the return location can be stored before any other ic saves. the ut1750ar reads the ics using the risc input instruction. the configuration of the ics is shown below. pipe register (pipe) the pipe register (figure 21) holds the pre-fetched mil-std- 1750a instruction. the ut1750ar reads the pipe register with the risc i/o instruction. program register (pr) the program register holds the present mil-std-1750a instruction. figure 22 shows the configuration of the program register (pr). 15 14 13 12 11 10 9 8 7 5 4 3 2 1 0 i c 1 5 i c 1 4 i c 1 3 i c 1 2 i c 1 1 i c 1 0 i c 9 i c 8 6 i c 6 i c 7 i c 5 i c 4 i c 3 i c 2 i c 1 i c 0 msb lsb figure 18. risc instruction counter register (ic) 16 i c 1 6 17 i c 1 7 18 i c 1 8 19 i c 1 9 15 14 13 12 11 10 9 8 7 5 4 3 2 1 0 i r 1 5 i r 1 4 i r 1 3 i r 1 2 i r 1 1 i r 1 0 i r 9 i r 8 6 i r 6 i r 7 i r 5 i r 4 i r 3 i r 2 i r 1 i r 0 msb lsb figure 19. instruction register (ir) 2 3 0 15 14 13 12 11 10 9 8 7 5 4 3 2 1 0 i c 4 5 i c 5 4 i c 6 3 i c 7 2 i c 8 1 i c 9 0 i c 1 i c 1 6 i c 1 i c 1 i c 1 i c 1 i c 1 i c 1 i c 1 i c 1 msb lsb figure 20. risc instruction counter save register (ics) 16 i c 6 17 i c 7 18 i c 1 8 19 i c 9 s s c s s c s s s s s s s s s s s s s s s s 15 14 13 12 11 10 9 8 7 5 4 3 2 1 0 p i p 1 5 6 msb lsb figure 21. the pipe register (pipe) p i p 1 4 p i p 1 3 p i p 1 2 p i p 1 1 p i p 1 0 p i p 9 p i p 8 p i p 7 p i p 6 p i p 5 p i p 4 p i p 3 p i p 2 p i p 1 p i p 0 e e e e e e e e e e e e e e e e 15 14 13 12 11 10 9 8 7 5 4 3 2 1 0 p r 1 5 p r 1 4 p r 1 3 p r 1 2 p r 1 1 p r 1 0 p r 9 p r 8 6 p r 6 p r 7 p r 5 p r 4 p r 3 p r 2 p r 1 p r 0 msb lsb figure 22. program register (pr) opcode irs ird
20 program counter register (pc) the program counter register (pc) (figure 23) contains the 16- bit address for the present mil-std-1750a instruction. the risc i/o instruction reads from or writes to the pc. 1750 timer a (ta) and 1750 timer b (tb) the timer a (ta) and timer b (tb) registers, figures 24a and 24b respectively, are 16-bit binary counters as defined by mil- std-1750a. the risc i/o instruction starts, halts, reads, and loads them. when one of the timers reaches its programmed time setting, such as going from ffffh to 0000h, a timeout occurs. this timeout sets the appropriate bit in the pending interrupt register (pi). system interface the system interface describes how the instruction and operand address and data busses operate during the ut1750ar?s many machine cycles and bus operations. the discussion about the ut1750ar?s machine cycles and bus operations applies to both the risc mode and the mil-std- 1750a mode of operation, since in the 1750 mode of operation the ut1750ar executes a specialized set of risc macros that allow the ut1750ar to emulate the mil-std-1750a instruction set architecture. the ut1750ar has the following seven types of machine operations or bus cycle operations: data bus cycle operation dma operation and bus arbitration interrupt operation and exception handling risc instruction bus cycle operation internal uart operation console mode of operation 1750 instruction memory mapping operand bus and instruction bus interfaces the ut1750ar operand data bus interface supports multiple processor and direct memory access (dma) configurations. the operand address bus (a15-a0), data bus (d15-d0), and memory control bus signals ( as , ds , r/ wr , m/ io , and op/ in ) are ttl-compatible signals that may be placed in a high- impedance state. these signals are only active during bus cycles when the ut1750ar is the current bus master. on other bus cycles, these signals enter a high-impedance state so an alternate bus master can control the busses. the four signals that make up the arbitration control bus -- bus request ( brq ), bus grant ( bgnt ), bus busy ( busy ), and bus grant acknowledge ( bgack ) -- control the ut1750ar?s operand data bus arbitration process. the arbitration process allows asynchronous bus arbitration. the instruction bus does not allow any type of bus arbitration. the ut1750ar is the only device permitted to access instruction memory; this access is generally confined to reading risc instructions the ut1750ar subsequently executes, although the risc instruction set does provide one instruction the ut1750ar uses to alter risc memory. this instruction is the store register to instruction memory (stri). the instruction address and data busses only enter a high- impedance state when the test input is low. a typical ut1750ar bus cycle figure 25a (see page 21), a generalized diagram for a typical ut1750ar bus cycle, shows the ut1750ar?s bus cycle separated into four distinct time periods (ck1 through ck4). these time periods are based on the processor clock. the ut1750ar performs a separate function during each of these four time periods. 15 14 13 12 11 10 9 8 7 5 4 3 2 1 0 p c 1 5 p c 1 4 p c 1 3 p c 1 2 p c 1 1 p c 1 0 p c 9 p c 8 6 p c 6 p c 7 p c 5 p c 4 p c 3 p c 2 p c 1 p c 0 msb lsb figure 23. the program counter register (pc) 15 14 13 12 11 10 9 8 7 5 4 3 2 1 0 t a 1 5 t a 1 4 t a 1 3 t a 1 2 t a 1 1 t a 1 0 t a 9 t a 8 6 t a 6 t a 7 t a 5 t a 4 t a 3 t a 2 t a 1 t a 0 msb lsb figure 24a. 1750 timer a (ta) 15 14 13 12 11 10 9 8 7 5 4 3 2 1 0 t b 1 5 t b 1 4 t b 1 3 t b 1 2 t b 1 1 t b 1 0 t b 9 t b 8 6 t b 6 t b 7 t b 5 t b 4 t b 3 t b 2 t b 1 t b 0 msb lsb figure 24b. 1750 timer b (tb)
21 brq and busy are sampled on these falling edges oscin ck1 ck2 ck3 ck4 state1 instruction address instruction data executing the risc instr. fetched during the previous cycle primary instr. register latches are open fetching the risc instr. to be executed during the next cycle valid instruction address valid instruction data bgnt & brq busy bgack as ds operand data operand address control valid operand address valid operand data valid bus control signals figure 25a. typical ut1750ar bus cycle with extended clock cycles rd(15:0) ra(15:0) a(15:0) d(15:0)
22 during the time period ck1, the ut1750ar begins executing the instruction in the primary instruction register (pir). the instruction executed is the instruction the ut1750ar fetched during the previous bus cycle, thus the overlapping fetch and execute cycles of the ut1750ar. during ck1, the risc address for the next instruction to fetch from memory becomes valid. also, the state1 output goes low, indicating the ut1750ar is executing an instruction. at the beginning of time period ck2, the data addressed during ck1 becomes valid. the following conditions extend time period ck2 one clock cycle: (1) executing a stri instruction, (2) executing a lri instruction, or (3) executing any instruction with long immediate data. the ut1750ar also extends clock period ck2 because of the operand bus arbitration process. the ut1750ar samples the logical and combination of the bus busy ( busy ) and bus grant ( bgnt ) inverted on the falling edge of ck2. if this combination is low during the falling edge of ck2, time period ck2 extends until the combination of the two signals is high, indicating the ut1750ar now controls the operand busses. the state1 output remains low for the entire ck2 time period. at the beginning of time period ck3, the state1 output goes high indicating the next instruction is being fetched from memory. the ut1750ar?s operand address and data busses become active at the beginning of ck3 along with the bus grant acknowledge ( bgack ), the address strobe ( as ), the memory or i/o (m/ io ), the operand/ instruction (op/ in ), and the read/ write (r/ wr ) signals. after time period ck4 starts, the transparent latches that make up the primary instruction register open up allowing the ut1750ar to input the instruction from risc memory. since the instruction being executed requires operand data, the data strobe ( ds ) goes active on the falling edge of the processor clock, one-half clock period after the rising edge of ck4. the ut1750ar now samples the data transfer acknowledge ( dtack ) signal on the next and every subsequent rising edge of the processor clock. if dtack is not low, the ut1750ar extends time period ck4 until dtack becomes active or until an error condition is detected -- either bus error ( bterr ) or memory protect ( mprot ) becomes active. state1 remains high during the entire ck4 time period. the processor bus cycle just described is for an instruction that requires some type of operand data. figure 25b shows a ut1750ar bus cycle when no operand data is required. this cycle is typical of the bus cycle occurring for instructions that only require internal processing. an example of this type of instruction is a move register-to-register instruction. for this type of instruction, each instruction requires two processor clock cycles for execution. neither time period (ck2 nor ck4) is extended because of operand bus arbitration or a delayed dtack . valid data valid address valid data valid address data instruction address instruction state1 ck4 ck3 ck2 ck1 oscin figure 25b. typical ut1750ar bus cycle oe
23 operand bus cycle operation the timing diagram in figure 26 (see page 24) shows signal relationships for the ut1750ar during an operand bus cycle operation. the ut1750ar performs one of four operations involving bus cycles on the operand busses. these bus cycles are: (1) memory read; (2) memory write; (3) i/o read; and (4) i/o write. the ut1750ar performs all four bus cycle operations similarly. the m/ io and r/ wr signals determine the precise type of bus cycle operation. for the following discussion, please refer to figure 26. when the operand bus arbitration process is complete and the ut1750ar controls the operand address and data busses, time period ck3 begins. because the ut1750ar took control of the operand busses at the beginning of time period ck3, bgack becomes active. state1 transitions from low to high and as goes active low. at the same time, the following signals become valid: r/ wr , m/ io , op/ in , and the operand address bus. the three control signals determine the direction and type of bus cycle taking place. one-half clock cycle after the beginning of time period ck4 or one full clock cycle after the start of time period ck3, ds goes active low. after ds has gone low, the ut1750ar samples the dtack input on every subsequent rising edge of oscin to determine the duration of ck4. this bus cycle terminates one- half clock cycle after the rising edge of oscin when the ut1750ar detects dtack has gone active. the ut1750ar also samples the mprot and bterr inputs on the same rising edge of oscin. these two inputs indicate an error condition and terminate the current bus cycle. after the ut1750ar recognizes the current bus cycle is finished, as and ds become inactive (transition from low to high) on the first rising edge of oscin after the end of time period ck4. at this time, the operand address bus (a0-a15) and the operand bus control signals (r/ wr , m/ io , op/ in ) select the memory or i/o location from which the operand data (d0-d15) is read, or to which the operand data (d0-d15) is written. the bus cycle completely ends one full clock cycle after the end of time period ck4 (the next rising edge of state1 ) when bgack , r/ wr , op/ in , and the operand address and data busses enter a high-impedance state. dma operation and bus arbitration figure 27 (see page 25) shows the timing diagram of the signal relationships for the ut1750ar during a dma operation. for dma operations, multiprocessor, and operand bus arbitration functions, the ut1750ar provides four active-low control signals for managing the operand bus and preventing bus contention. these signals are bus request ( brg ), bus grant ( bgnt ), bus busy ( busy ), and bus grant acknowledge ( bgack ). each of the four bus control signals provides a specific function for controlling operand bus operation. the function of each of the four signals is given below. bus request ( bro ) the ut1750ar generates brg to indicate a request to use the operand busses. when the ut1750ar controls the operand busses, if it then requires successive bus cycles, multiple bus requests are not generated. the ut1750ar retains control of the busses by keeping the bgack signal active until it no longer requires the busses. bus grant ( bgnt ) an external arbiter generates this input indicating to the ut1750ar that it has the highest priority. this informs the ut1750ar to control the operand busses as soon as the present bus master relinquishes bus control by setting busy = 1. bus busy ( busy ) another bus master generates busy input to the ut1750ar, indicating another bus master is using the bus. bus grant acknowledge ( bgack ) the ut1750ar generates this signal to indicate it is the present bus master. bgack enters a high-impedance state when the ut1750ar gives up control of the operand busses. the ut1750ar requests control of the operand busses at the beginning of time period ck2 by asserting brg . on every subsequent falling edge of oscin, the ut1750ar samples the bgnt and busy inputs. when the ut1750ar detects on the falling edge of oscin that bgnt has gone low and busy has gone high, this tells the ut1750ar that it is the new bus master and can now control the operand busses. the ut1750ar locks out any other bus master from controlling the operand busses by asserting bgack at the beginning of time period ck3 and holding bgack active until it is ready to give up control of the operand busses. the ut1750ar holds the bgack signal active until the beginning of the ck3 time period of the next bus cycle when the ut1750ar no longer controls the operand busses.
24 dtack data operand address operand r/wr control ds as bgack brq state1 ck4 ck3 ck2 ck1 oscin (1) address valid data valid (2) figure 26. typical ut1750ar data bus cycle operation note: (1) dtack must be active bythis edge to avoid wait states. (2) dtack is sampled by the rising edges of oscin .
25 data operand address operand control ck4 ck3 ck2 ck1 oscin address valid data valid (1) figure 27. typical ut1750ar dma bus cycle note: 1. bgnt is sampled by the falling edges of oscin. wait states are inserted until bgnt is low and busy is high. dtack ds bgack bgnt brq state1 r/ wr
26 interrupt operation and exception handling the ut1750ar supports 16 levels of interrupts (table 1). eight (int0 through int5, iol1, and iol2) of the 16 interrupts are externally available for system use when the ut1750ar operates in the risc mode. the ut1750ar internally defines the remaining interrupts for specific purposes. the ut1750ar internally prioritizes the 16 interrupts; interrupt 0 (power down interrupt) has the highest priority, and interrupt 15 (int5) has the lowest. interrupts 0 and 5 are cleared when a master reset ( mrst ) is asserted. all the ut1750ar?s 16 interrupts are edge-triggered, except interrupt 3 (floating-point overflow), interrupt 5 (executive call), and interrupt 6 (floating-point underflow). if any one of the 16 interrupts becomes active, the ut1750ar latches the bit corresponding to the active interrupt into the pending interrupt register (pi). the program can now read the pi to determine which of the 16 interrupts has occurred. when the ut1750ar is operating in the risc mode and an interrupt alters the risc program flow, the ut1750ar first saves the present value of the instruction counter (ic) in the instruction counter save register (ics), and then disables the interrupts. the ut1750ar then loads the ic with the memory location (table 2) corresponding to that interrupt. when programming the ut1750ar, the ics must be read with an input instruction before the interrupts are re-enabled or before executing a call or jc (br) instruction to assure that the return address in the ics is not overwritten. the call instruction also saves the ic in the ics and overwrites the interrupt return address with the call return address. similarly, if the interrupts are re-enabled before the interrupt return address is read from the ics, the occurrence of a new interrupt causes the old return address to be overwritten. therefore, for call instructions the system programmer should reserve register pair xr16 for ics storage; for interrupts, the system programmer should reserve register pair xr18 for ics storage. when nested calls or interrupts are encountered, the address values stored in register pairs xr16 and xr18, respectively, must be stored in system memory to provide the ut1750ar with full return information. table 1. interrupt definitions interrupt number 0 (highest priority) 1 2 3 4 5 6 7 8 9 10 11 12 description power-down interrupt.cannot be masked or disabled. machine error. cannot bedisabled. int0. external user interrupt. floating-point overflow. fixed-point overflow. branch executive. cannot be masked or disabled. floating-point underflow. 1750 timer a (if implemented). int1. external user interrupt. 1750 timer b (if implemented). int2. external user interrupt. int3. external user interrupt. input/output level 1. int4. external user interrupt. input/output level 2. int5. external user interrupt. 13 14 15 (lowest priority)
27 when the ut1750ar is in the 1750 mode, the ut1750ar handles the interrupt linkage pointer address and interrupt service pointer address with the mil-std-1750a emulation programming stored in the risc proms. the addresses used for each of the 16 interrupts are in table 3. any one of the 16 ut1750ar interrupts can be enabled at any time during processor operation by setting the appropriate bit in the interrupt mask register (mk). if an interrupt occurs but happens to have its corresponding bit masked out in the mk, then the ut1750ar ignores that interrupt, although the power- down interrupt (interrupt 0) and the branch executive interrupt (interrupt 5) cannot be masked or disabled. risc instruction bus cycle operation the instruction bus cycle operation refers to the only two risc instructions that can manipulate the data in the risc memory. these two risc instructions are store register to instruction memory (stri) and load register from instruction memory (lri). stri instruction bus cycle operation during an stri instruction, risc instruction data moves from the ut1750ar to the risc instruction memory. figure 28 (see page 28) shows the timing diagram of the signal relationships for the ut1750ar during an stri instruction bus cycle operation. before the ut1750ar executes the stri instruction, the system programmer must load the ut1750ar?s accumulator (acc) with the risc address which will receive the data. when the acc is loaded with the address information, the ut1750ar can begin executing the stri instruction. executing the stri instruction begins when the falling edge of oscin signals the start of time period ck1. at the beginning of ck1, the data previously stored in the acc becomes a valid address on the risc address bus (ra0-ra20) and the state1 output becomes active, indicating the ut1750ar is executing a risc instruction. table 2. interrupt instruction counter load location interrupt number location (hex) mask- (y/n) can user disable (y/n) able 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0400 0404 0408 040c 0410 0414 0418 041c 0420 0424 0428 042c 0430 0434 0438 043c n y y y y n y y y y y y y y y y n n y y y n y y y y y y y y y y table 3. ut1750ar mil-std-1750 interrupt pointer addresses interrupt number interrupt linkage pointer address (hex) interrupt service pointer address (hex) 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 20 22 24 26 28 2a 2c 2e 30 32 34 36 38 3a 3c 3e 21 23 25 27 29 2b 2d 2f 31 33 35 37 39 3b 3d 3f
28 the ut1750ar de-asserts the output enable (risc instruction) ( oe ). this inhibits the risc instruction from placing any data on the risc data bus. the ut1750ar asserts the write enable (risc instruction) ( we ) so the ut1750ar can write to risc instruction memory. the data from the register selected in the stri instruction is valid on the risc data bus during time period ck2. lri instruction bus cycle operation during an lri instruction, the ut1750ar moves the risc instruction data from the risc instruction memory to the ut1750ar. figure 29 shows the timing diagram of the signal relationships for the ut1750ar during an lri instruction bus cycle operation. just as with the stri instruction, before the ut1750ar executes the lri instruction the system programmer must load the ut1750ar?s accumulator (acc) with the risc address from which the data will be read. after the acc is loaded with the address information, lri instruction execution can take place. executing the lri instruction begins when the falling edge of oscin signals the start of time period ck1. at the beginning of ck1, the data previously stored in the acc becomes a valid address on the risc address bus (ra0-ra20) and the state1 output becomes active indicating the ut1750ar is executing a risc instruction. the data on the risc data bus is read into the ut1750ar during time period ck2. the function of the remainder of the bus cycle (time periods ck3 and ck4) is the same as for other risc instructions. state1 is high, indicating the next risc instruction is being fetched from memory and is ready for execution during the next bus cycle. figure 28. stri instruction typical timing data valid data valid (rsn) data valid address valid (ic) address valid (acc) data risc address risc we oscin ck1 ck2 ck3 ck4 state1 oe
29 internal uart operation the ut1750ar has an internal uart. figure 30 (see page 30) shows a diagram of the ut1750ar connected to a serial data bus. the uart operates at a fixed frequency of 9600 baud with eight data bits, one stop bit, and odd parity. the timclk input fixes the baud rate of the uart. this input also controls the frequency of the internal 1750 timer registers (ta and tb). the uart?s transmitter buffer register (txmt) and receiver buffer register (rcvr) are ut1750ar internal registers and are treated as such when programming the ut1750ar. the status of the ut1750ar?s internal uart is read from the system status register (status) bits 7 through 0. uart transmitter operation the transmitter portion of the ut1750ar?s uart is a double- buffered configuration consisting of a transmitter register and a transmitter buffer register. the transmitter register contains the serial data stream the ut1750ar is currently transmitting through the uart; the transmitter buffer register contains the next message to transmit through the uart. the system programmer reads the status of the transmitter register from bit 1 (te) of the status and the status of the transmitter buffer register from bit 2 (tbe) of the status. if bit 2 of the status is high, the uart transmitter is ready for data. bit 1 is low during the serial transmission and transitions to a high when a transmission from the transmitter register is complete. to initiate a serial data transmission, the system designer must first load the data to transmit into the transmitter buffer register with the output instruction. this instruction loads the least significant byte of the source register specified in the instruction into the transmitter buffer register. at this time, tbe goes low and the ut1750ar automatically transfers the data word into the transmitter register. after the transfer is complete, te goes low and tbe returns high indicating a serial transmission is about to begin and the next data word can be loaded into the transmitter buffer register. oe state1 ck4 ck3 ck2 ck1 oscin we risc address risc data address valid (acc) address valid (ic) data valid data valid (rsn) data valid figure 29. lri instruction typical timing
30 this double-buffering process allows transmitting contiguous serial data streams. the process of alternately loading the transmitter buffer register with new data and then reading the transmitter status from the status continues until completion of all serial data transmission. uart receiver operation the ut1750ar?s internal uart has one register associated with the receive function. this register is the uart receiver buffer register (rbr). the least significant byte of the rcvr contains the received serial data. the system status register (status) contains error information about the serial data in the rcvr. these four error bits are (1) bit 7, the receiver error (re), which is the logical or combination of the other three error bits; (2) bit 6, an overrun error (oe); (3) bit 5, a framing error (fe); and (4) bit 4, a parity error (pe). an additional status bit for the receiver is the data ready (dr) bit. dr is the least significant bit of the status. when the ut1750ar is ready to receive serial data through the internal uart, it must poll the status to determine when the data ready (dr) bit transitions from a low to a high to signify that the uart has indeed received a serial transmission. when dr = 1, the system programmer reads the rcvr by executing an input instruction. the inr instruction takes the eight bits of received data in the rcvr and places this data in the least significant byte of the destination register specified in the instruction. when the ut1750ar is finished executing the input instruction, the system programmer can then determine the validity of the message by testing the re bit. after the programmer has checked for a valid message, the data can be stored. if the ut1750ar is to receive more data through the uart, the programmer must return to polling the status to determine the reception of the next valid serial transmission. 1750 console mode of operation the ut1750ar supports a defined console mode of operation when operating as a mil-std-1750 processor. the console mode of operation is a unique mode of operation that allows the system programmer to connect the ut1750ar directly to a programmer?s console. the actual console can be any type of i/ o device, such as a computer terminal, that allows the programmer to interface with the ut1750ar?s internal uart. while operating the ut1750ar in the console mode, the programmer can (1) examine and modify the ut1750ar?s internal registers; (2) examine and modify the contents of the operand memory; (3) examine and modify the contents of the risc memory; (4) examine and modify the contents of the i/o subsystems; (5) continue the execution of a 1750 program; and (6) have the ut1750ar begin program execution from any address. the console input is a discrete input to the ut1750ar and is read as bit 3 in the system status register (status). the definition of this input is not inherent to the ut1750ar, but is defined only by the programming within the risc proms. since, as with many other operational features of the ut1750ar, the console mode is a function of the programming in the risc proms, the user can tailor the ut1750ar?s console mode to a specific application. for example, the user can modify the console mode program in the risc proms so when the ut1750ar executes this code, it performs a system- level test. when complete, the ut1750ar reports the results to the programmer?s console where the user can ascertain the functional integrity of the system. figure 30. serial data bus interface to the ut1750ar and odd parity one stop bit eight data bits, 9600 baud serial rs-232 bus -- rcvr bus serial drvr bus serial ut1750ar for uart 12 mhz i/p timclk uartin uartout
31 entering the console mode the ut1750ar enters the console mode in one of two ways: if the console input is active (high) when the ut1750ar is reset ( mrst = 0). upon executing a breakpoint (bpt) instruction. when the ut1750ar encounters a bpt instruction, the ut1750ar first reads the data in the status. if the console enable bit (bit 4) in the status is low, t he ut1750ar treats the bpt instruction like a nop. if, on the other hand, the console enable bit is high, the ut1750ar enters the console mode and waits for the first console ommand. when the ut1750ar enters the console mode, it begins executing the program stored in the risc proms. the ut1750ar initially sets its internal uart as the default console interface. although the internal uart is the default console interface, the user can select another interface, such as a mil-std-1553 bus, another external serial interface, or a parallel interface, as the console interface by changing the programming in the risc proms. using the console mode to control the ut1750ar with the console mode, the user simply transmits a predefined set of ascii characters over the serial data port. the list of the predefined ascii characters meaningful to the ut1750ar?s console mode are described in detail in the following sections. the ut1750ar can receive these console control commands with its internal uart, decode them, and then take the appropriate action. all ascii characters must be capitalized for the ut1750ar to recognize them. the four primary ascii control characters are e, m, c, and r. these control characters permit the system user to examine or modify instruction memory, operand memory, external i/o, and internal registers, continue execution, and run from a set starting location. the examine (e) command the examine command has four variations: (1) eixxxx - the examine instruction (risc) memory command. this command permits the user to examine any memory location within the 64k instruction memory space. the ei command is followed by the 16-bit hex address, above as ?xxxx,? of the memory location to examine. valid characters for the instruction address field (xxxx) are 0-9 and a-f. the user can examine consecutive memory locations by repeatedly entering space characters. the console continues to display the contents of contiguous memory locations until any non-space character is received. when the console receives a non-space character, it terminates ei command execution and waits for the next valid console command. (2) eoxxxx - the examine operand memory c ommand. this command works exactly the same as the ei command except that the user can now examine operand memory. (3) eexxxx - the examine external (i/o) command. this command works exactly the same as the ei and eo commands except that the user can now examine any external i/o location. (4) er - the examine register command. the examine register command allows the user to look at most of the ut1750ar?s internal registers. after the ut1750ar has received the er command, it displays the contents of register r0. the user can examine additional registers by repeatedly transmitting space characters to the ut1750ar. the console mode displays the registers one after another in the following order: r0 through r15, 1750 status word (sw), pending interrupt register (pi), interrupt mask register (mk), fault register (ft), 1750 program counter (pc), 1750 timer a (ta) and timer b (tb). the ut1750ar continues to display its registers until the ut1750ar receives a non-space character or until the ut1750ar has displayed the complete list of registers. at this time the ut1750ar terminates the er command and waits for the next valid console command. the modify (m) command the modify command has four variations: (1) mixxxx,vvvv - the modify instruction (risc) memory command. this command permits the user to modify any memory location within the 64k instruction memory space. the mi command is followed by the 16-bit hex address denoted above as ?xxxx,? of the memory location to examine and the 16 bit hex value denoted above as ?vvvv,? the user wishes to place in this memory location. valid characters for the instruction address field (xxxx) and value field (vvvv) are 0-9 and a-f. the user can modify consecutive memory locations by entering multiple 16-bit values in the mi command. the mi command would then take the form: mixxxx,vvvv,vvvv,...,vvvv where the user can enter as many new values as desired. the commas are optional as delimiters. the ut1750ar now modifies instruction memory starting at the given address (xxxx) and continues to modify memory until all new values are in memory. (2) moxxxx,vvvv - the modify operand memory command. this command works exactly the same as the mi command except that the user can now modify operand memory. the form of the mo command to alter multiple operand memory locations is: moxxxx,vvvv,vvvv,...,vvvv. (3) mexxxx,vvvv - the modify external i/o command. this command works exactly the same as the mi and mo commands except that the user can now modify any external i/o location. the form of the me command to alter multiple external i /o locations is: mexxxx,vvvv,vvvv,...,vvvv.
32 (4) mrrr,vvvv - the modify register command. the modify register command allows the user to modify most of the ut1750ar?s internal registers. the mr command is followed by an 8-bit register id code, denoted as rr, and a 16- bit value, denoted as vvvv. table 4 lists the register ids that the ut1750ar recognizes. valid characters for the register id field (xxxx) and value fields (vvvv) are 0-9 and a-f . the user can use only one mr command to modify one ut1750ar register. modifying additional registers requires transmitting a separate mr command for each change. the continue execution (c) command the continue execution command allows the user to resume program execution from the point where the console mode of operation was entered. the continue execution command takes the form: c0 - resume execution with timers a and b halted. c1 - resume execution with timer a on and timer b off. c2 - resume execution with timer a off and timer b on. c3 - resume execution with timers a and b on. the run from memory location (r) command the run from memory location command allows the user to start program execution from any point within the 64k operand memory space. this command takes the form rxxxxn where ?xxxx? denotes the 16-bit starting address. valid characters for the address field (xxxx) are 0-9 and a-f. the value n is either 0,1,2, or 3 and is defined: table 4. console command register id numbers register r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r13 r14 r15 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f id number (hex) sw pi mk ft ta tb discon discoff 10 11 12 13 14 15 16 17
33 0 - resume execution with timers a and b halted. 1 - resume execution with timer a on and timer b off. 2 - resume execution with timer a off and timer b on. 3 - resume execution with timers a and b on. exiting the console mode the ut1750ar exits the console mode of operation by executing either continue execution (c) command or a run from memory location (r) command. after the ut1750ar leaves the console mode, it resumes operating in a normal 1750 mode. 1750 mode built-in test in the 1750 mode of operation, the ut1750ar features a built- in test function which executes upon device power-up or reset. the built-in test function performs ?stuck-at? tests on all internal ut1750ar registers, timer a, and timer b. in addition to testing the ut1750ar registers, the built-in test also checks for the 1750 emulation code. the 1750 emulation rom is tested via a checksum test of all memory locations. test failures are recorded in the ut1750ar?s fault register. - ut1750ar failure: fault register = 5 (hex) - emulation code checksum failure: fault register = 6 (hex) - output discrete 2 (ra17/od1) = active (logic 1) if the console pin is asserted (logic 1) during power-up or reset, the emulation code will enter the console mode after finishing the built-in tests. the fault register contents indicate the failure mode. a failure in the built-in test without the console mode implemented results in output discrete 2 (ra17/od1) being set to a logic one. in addition to the output discrete 2 being set to a logic one, the ut1750ar will not begin program execution if failure occurs in pi or ft registers. 1750 xio the ut1750ar emulation code does not implement the following optional xio command fields and mnemonics: 2008 od -- output discretes 200a rns -- reset normal power-up discrete 4001 clc -- clear console 4003 mpen -- memory protect enable 50xx lmp -- load memory protect ram a001 ric1 -- read input/output interrupt code, level 1 a002 ric2 -- read input/output interrupt code, level 2 a008 rdor -- read discrete output register a009 rdi -- read discrete input a00b tpio -- test programmed output d0xx rmp -- read memory protect ram the ut1750ar internal uart is i/o mapped as follows: xio ra, fffe (hex) - risc status register contents loaded into register ra xio ra, ffff (hex) - contents of uart receiver buffer register (rcvr) loaded into register r xio ra, 7fff (hex) - contents of register r a loaded into uart transmitter buffer register (tbr) mil-std-1750 console xio?s result in the following: 1750 instruction effective result 4000 co xio ra, 7fff (hex) 4001 clc nop c000 ci xio ra, ffff (hex) c001 rcs xio ra, fffe (hex) 1750 instruction memory mapping the ut1750ar emulates the mil-std-1750a isa by mapping each of the 1750a opcodes into a specific location within the ut1750ar?s risc memory space. this memory mapping is accomplished by internal ut1750ar hardware. the memory mapping for the valid 1750 opcodes between 00h and 4fh is shown in table 5. for the base relative and indexed base relative 1750 instructions, the ut1750ar maps multiple instructions to the same address. the ut1750ar determines the correct operation for these opcodes by using the input register (inr) risc instruction. for more information on the operation of the inr instruction, please refer to the ut1750ar assembly language manual . for the remainder of the valid 1750 opcodes between 50h and ffh, the ut1750ar follows a straightforward memory- mapping scheme. to determine the risc memory location for these 1750 opcodes, the ut1750ar masks off the lower byte of the instruction and logically shifts the result four times to the right. for example, the 1750 opcode for the popm instruction is 8fxxh. the location of the popm macro in the ut1750ar?s risc memory space is 08f0h.
34 programming interface data formats the ut1750ar instruction set supports 16-bit integer single- precision data and 32-bit integer double- precision data. when the ut1750ar is operating in the 1750 mode with the 1750 emulation code in the risc proms, the ut1750ar can emulate 32-bit floating-point and 8-bit floating-point extended- precision data. all data is in 2?s complement representation. the ut1750ar represents the fixed-point data formats as a 2?s complement integer with the msb as the sign bit (figures 31a and 31b). operand size the ut1750ar?s instruction set supports three operand sizes: (1) byte (eight bits); (2) word (16 bits); and (3) long word (32 bit). byte operands are only allowed with byte instructions. all other instructions support word and long-word operands. organization of data in general purpose registers all 20 of the ut1750ar?s general purpose data registers support bit, byte, and word operations. when the system programmer specifies a byte operation in a specific instruction, the instruction expects to find the byte of operand data in the least significant eight bits of the data register. the least significant bit of each of the data registers is bit 0 and the most significant bit of each of the data registers is bit 15. any one of the data registers may be the source or destination for the operand. for long-word operands, the ut1750ar organizes the 20 general purpose data registers as 10 even/odd register pairs. the even-numbered register of the register pair contains the most table 5. risc macro locations for valid 1750 opcodes between 00h and 4fh 1750 instruction lb dlb stb dstb ab sbb mb db fab fsb fmb fdb orb andb cb fcb 00 to 03 04 to 07 08 to 0b 0c to 0f 10 to 13 14 to 17 18 to 1b 1c to 1f 20 to 23 24 to 27 28 to 2b 2c to 2f 30 to 33 34 to 37 38 to 3b 3c to 3f 0020 0060 00a0 00e0 0120 0160 01a0 01e0 0220 0260 02a0 02e0 0320 0360 03a0 03e0 1750 opcode(s) risc macro location lbx dlbx 400 to 430 401 to 431 0030 0070 stbx dstx abx sbbx mbx dbx fabx fsbx fmbx fdbx cbx fcbx andx orbx xio vio 402 to 432 403 to 433 404 to 434 405 to 435 406 to 436 407 to 437 408 to 438 409 to 439 40a to 43a 40b to 43b 40c to 43c 40d to 43d 40e to 43e 40f to 43f 48 49 00b0 00f0 0130 0170 01b0 01f0 0230 0270 02b0 02f0 0330 0370 03b0 03f0 0480 0490 aim sim 4ax1 4ax2 0050 0090 mim msim dim dvim andm orim xorm cim 4ax3 4ax4 4ax5 4ax6 4ax7 4ax8 4ax9 4axa 00d0 0110 0150 0190 01d0 0210 0250 0290 nim bif 4axb 4f 02d0 04f0 14 0 figure 31a. single 6precision fixed-point data figure 31b. double 06precision fixed-point data 15 sign data lsb msb sign msb lsb (msh) (lsh) 31 30 16 15 0
35 significant word. all register pairs may be the source or destination operands. special purpose data registers in addition to the 20 general purpose data registers, the ut1750ar has three special purpose data registers: (1) the accumulator (acc); (2) the stack pointer (sp); and (3) the instruction counter save register (ics). the accumulator (acc) is a 32-bit register used only with multiply, divide, extended shift, load register from instruction memory (lri), and store register to instruction memory (stri) instructions. for multiply instructions, the acc retains the most significant half of the product, and for divide instructions, the acc retains the remainder. for lri and stri instructions, the acc contains the instruction memory pointer. note that the acc can be used as a general purpose register for most operations. the stack pointer (sp) is a 16-bit register usable only with pop and push instructions. the instruction counter save (ics) register is a 20-bit register used during calls, jumps, and interrupts. register notation the ut1750ar?s risc instruction descriptions contain a definition of the register transfer language (rtl) that the risc assembler uses to describe how the risc instructions operate. the rtl description of the ut1750ar?s internal registers is as follows: rs n -- source register where n specifies the register number. rd n -- destination register where n specifies the register number. xrs n -- long-data source register where n specifies the register number. xrd n -- long-data destination register where n specifies the register number. ic -- instruction counter sp -- stack pointer acc -- 32-bit accumulator ics -- instruction counter store register @rs n -- data register indirect where n specifies the register number @sp -- stack pointer indirect # -- immediate data @# -- immediate data indirect instruction formats the ut1750ar has three instruction formats (figure 32): (1) register-to-register; (2) register-to-short immediate; and (3) register-to-immediate. all the ut1750ar?s instructions are either word (16-bit) or long-word (32-bit) in length. the only time the ut1750ar uses the long-word instruction format is for the immediate source operand address mode. 0 4 5 9 10 14 15 figure 32b. registerx 106to-short immediate 0 4 5 9 10 14 15 figure 32a. registerx0106to-register instruction format figure 32c. register immediate instruction format msb lsb mode opcode destination source 0 xxxxx rd rs mode opcode destination source msb lsb 1 xxxxx rd immediate mode msb opcode destination source lsb 0 xxxxx rd 11111 0 4 5 9 10 14 15 16-bit immediate data 15 0 msb lsb instruction format
36 the bits in the risc instructions are defined as follows: m: instruction mode bit. when m = 1, the ut1750ar interprets the instruction source field as a five-bit literal value. if m = 0, the ut1750ar uses the instruction source field to specify the source register for the instruction. opcode: this field is the five-bit opcode the ut1750ar uses to decode the risc instruction into a machine operation. destination: this field specifies the register the ut1750ar uses for the destination of the instruction. source: this field specifies the register the ut1750ar uses for the instruction source. immediate: if needed, this field contains the 16-bits of immediate data the ut1750ar requires for the long- immediate instruction. operand addressing modes the ut1750ar?s risc instruction set supports four basic addressing modes. all risc instructions require a source operand and a destination operand. the destination operand is a data register (rdn or xrdn) for all risc instructions, except the jump on condition (jc) instruction where the destination register contains a template for the jump condition tested for in the instruction. the source operand can be either a data register or immediate data for all risc instructions. the source operand can also be addressed in an indirect mode. in an indirect addressing mode, the source data register or the stack pointer contains an effective address. this address points to the memory location for operand data the ut1750ar uses during the current instruction execution. this type of memory addressing is only used with the load (lr), store (str), push, and pop risc instructions. destination addressing mode the destination operand is given explicitly for all ut1750ar risc instructions. the ut1750ar encodes a five-bit field, bits 9 through 5, in each instruction as follows: r0 -- 00000 xr0 -- 10000 r1 -- 00001 r16 -- 10001 r2 -- 00010 xr2 -- 10010 r3 -- 00011 r17 -- 10011 r4 -- 00100 xr4 -- 10100 r5 -- 00101 xr16 -- 10110 r6 -- 10110 r7 -- 00111 xr8 -- 11000 r8 -- 01000 r18 -- 11001 r10 -- 01010 xr10 -- 11010 r11 -- 01011 r19 -- 11011 r12 -- 01100 xr12 -- 11100 r13 -- 01101 xr18 -- 11101 r14 -- 01110 xr14 -- 11110 r15 -- 01111 acc -- 11111 nul -- 10111 in 1750 emulation mode register pairs xr8, xr10 and xr12 have a special meaning. register xr8 is a pointer to the mil- std-1750a destination register (defined as ra). register pair xr10 is a pointer to the next register, ra+1. register pair xr12 is a pointer to the source register. source addressing modes the ut1750ar directly addresses the source operand by using one of three normal modes: (1) data register direct; (2) literal; and (3) immediate long data. data register direct when the ut1750ar uses the data register direct mode, the source operand is one of the data registers. the data register is explicitly stated for all risc instructions. the ut1750ar encodes a 5-bit field, bits 4 through 0, in each instruction as follows: r0 -- 00000 xr0 -- 10000 r1 -- 00001 r16 -- 10001 r2 -- 00010 xr2 -- 10010 r3 -- 00011 r17 -- 10011 r4 -- 00100 xr4 -- 10100 r5 -- 00101 xr16 -- 10101 r6 -- 00110 xr6 -- 10110 r7 -- 00111 r8 -- 01000 xr8 -- 11000 r9 -- 01001 r18 -- 11001 r10 -- 01010 xr10 -- 11010 r11 -- 01011 r19 -- 11011 r12 -- 01100 xr12 -- 11100 r13 -- 01101 xr18 -- 11101 r14 -- 01110 xr14 -- 11110 r15 -- 01111 reserved -- 10111 and 11111 in 1750 emulation mode register pairs xr8, xr10 and xr12 have a special meaning. register xr8 is a pointer to the mil- std-1750a destination register (defined as ra). register pair xr10 is a pointer to the next register, ra+1. register pair xr12 is a pointer to the source register.
37 literal when the ut1750ar uses the literal mode, the source operand is a 5-bit literal data value. the ut1750ar explicitly states this literal data value for the risc instructions. the ut1750ar encodes a 5-bit field, bits 4 through 0, in each instruction as follows: 0 -- 00000 -16 -- 10000 +1 -- 00001 -15 -- 10001 +2 -- 00010 -14 -- 10010 +3 -- 00011 -13 -- 10011 +4 -- 00100 -12 -- 10100 +5 -- 00101 -11 -- 10101 +6 -- 00110 -10 -- 10110 +7 -- 00111 - 9 -- 10111 +8 -- 01000 - 8 -- 11000 +9 -- 01001 - 7 -- 11001 +10 -- 01010 - 6 -- 11010 +11 -- 01011 - 5 -- 11011 +12 -- 01100 - 4 -- 11100 +13 -- 01101 - 3 -- 11101 +14 -- 01110 - 2 -- 11110 +15 -- 01111 - 1 -- 11111 immediate long when the ut1750ar uses the immediate long mode, the source operand is a 16-bit data value. the ut1750ar explicitly states this data for all risc instructions and encodes the 16-bit data in a second 16-bit instruction word (figure 32). the ut1750ar encodes the 5-bit field of the instruction source field, bits 4 through 0, as follows: imm -- 11111 special source operand addressing modes in addition to its three direct addressing modes, the ut1750ar also supports three modes of indirect addressing: (1) data register indirect; (2) stack pointer indirect; and (3) absolute. data register indirect when the ut1750ar uses the data register indirect mode, the source operand is a memory location addressed by the contents of the specified data register. the data register is explicitly stated for all risc instructions. this mode is only available on the lr, str, inr, and str instructions. the ut1750ar encodes a 5- bit field, bits 4 through 0, in each instruction as follows: r0 -- 00000 xr0 -- 10000 r1 -- 00001 r16 -- 10001 r2 -- 00010 xr2 -- 10010 r3 -- 00011 r17 -- 10011 r4 -- 00100 xr4 -- 10100 r5 -- 00101 xr16 -- 10101 r6 -- 00110 xr6 -- 10110 r7 -- 00111 r8 -- 01000 xr8 -- 11000 r9 -- 01001 r18 -- 11001 r10 -- 01010 xr10 -- 11010 r11 -- 01011 r19 -- 11011 r12 -- 01100 xr12 -- 11100 r13 -- 01101 xr18 -- 11101 r14 -- 01110 xr14 -- 11110 r15 -- 01111 reserved -- 10111 and 11111 stack pointer indirect when the ut1750ar uses the stack pointer indirect mode, the source operand is a memory location addressed by the contents of the stack pointer (sp) register. this mode is only available with pop and push instructions. the ut1750ar encodes a 5- bit field, bits 11 through 15, of each instruction when in the stack pointer indirect mode as follows: sp -- 10111. absolute when the ut1750ar uses the absolute mode, the source operand is the memory location addressed by the contents of the 16-bit immediate-data field accompanying the instruction. this mode is only available on the lr, str, inr, and otr instructions. the system programmer encodes the immediate data field as a second 16-bit instruction word. data movement operations the ut1750ar places no restrictions on operand size during data movement. this means the size (byte, word, or long word) of the data in the source and destination do not have to match. the ut1750ar handles the data movement for all risc instructions. when a risc instruction specifies a word destination, a 16-bit result is always stored in the destination. if the risc instruction specifies a 5-bit literal source operand, then the ut1750ar sign-extends this source data to produce a 16-bit operand. if the risc instruction specifies a word-length source operand, there is no manipulation of the source data. if the risc instruction specifies a long-word source operand, the ut1750ar only retains the least significant 16 bits of the result. the ut1750ar truncates the most significant 16 bits of the result.
38 when a risc instruction specifies a long-word destination, a 32-bit result is always stored in the destination. if the risc instruction specifies a 5-bit literal source operand, then the ut1750ar sign-extends this source data to produce a 32-bit operand. if the risc instruction specifies a word-length source operand, then the ut1750ar also sign-extends this source data to produce a 32-bit operand. if the risc instruction specifies a long-word-length source operand, there is no manipulation of the source data. when the system programmer specifies a byte instruction, the ut1750ar only stores eight bits of the result regardless of whether the risc instruction specifies a word or long-word destination register. operation code matrix the ut1750ar performs 30 basic operations, each with its own operation code. all the ut1750ar?s operations are explicit, and are encoded in bits 14 through 10 of the risc instruction (figure 32; see page 35). a list of the ut1750ar?s opcodes are in table 6. instruction clock cycles the number of processor clock cycles the ut1750ar requires to execute each of its instructions is in table 7. table 7 specifies, for each instruction, the execution time for the three instruction types (register-to-register, register-literal, and register-to- long immediate) where applicable. absolute maximum ratings (1) (referenced to v ss ) symbol parameter limits unit v v i t i dd i/o i stg lu dc supply voltage voltage on any pin dc input current storage temperature latchup immunity (2) -0.3 to +7.0 -0.3 to v dd +0.3 -65 to +150 150 + - v v ma c ma notes: 2. see discussion of test technique (figure 43). 1. stresses outside the listed absolute maximum ratings may cause permanent damage to the device. this is a stress rating only, and functional operation of the device at these or any other conditions beyond limits indicated in the operational sections of th is specification is not recommended. exposure to absolute maximum rating conditions for extended periods may affect device reliability. p t q d j jc maximum power dissipation maximum junction temperature thermal resistance, junction-to-case (3) 600 +175 10 mw c 3. test per mil-std-883, method 1012. c/w + 10 recommended operating conditions symbol parameter limits unit v t dd c dc supply voltage temperature range 4.5 to 5.5 -55 to +125 v c v in dc input voltage 0 to v dd v
39 table 6. ut1750ar operation code matrix opcode 00000 00001 00001 00001 00010 00010 00010 00011 00100 00101 00110 00111 01000 description move data load data from data memory load from risc instruction memory pop from stack store to data memory store to instruction memory push to stack call routine move and set condition flags input register output register spare - not used add add with carry add byte add unsigned 01001 01010 01011 mnemonic 01101 01110 01111 10000 10001 10010 10011 10100 10101 10110 10111 subtract subtract with borrow subtract byte compare and logic or logic xor logic not logic reset bit set bit test bit spare - not used shift logic shift arithmetic shift cyclic 11000 11001 11010 01100 lr lri pop str stri push call movc inr otr add addc ab addu subb sb cmp and or xor not rbr sbr tbr slr sar scr sub 11011 11100 11101 signed multiply move byte swap bytes signed divide jump conditionally branch conditionally 11110 11111 11111 muls movb swab divs jc br mov -- --
40 muls subb addu addc movc push table 7. execution times for the ut1750ar risc instructions ut1750ar instruction execution clock cycles mnemonic register-to- register-to- lr lri pop str stri call inr otr add ab sb cmp and or xor not rbr sbr tbr slr sar scr sub movb swab divs mov register literal register-to-long immediate jc br 2 3+w n/a 3+w 3+w n/a 3+w 4 2 3+w 3+w 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3+n 3+n 3+n 3+k 2 2 36 or 68 2 n/a 2 n/a 4 n/a n/a 4 n/a n/a 2 special 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3+m 3+m 3+m 3+k 2 2 36 or 68 n/a 2 4 4+w n/a n/a 4+w n/a n/a 4 4 4+w 4+w 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4+n 4+n 4+n 4+k 4 4 37 or 69 4 n/a where: w m n j k n/a = = = = = = wait state(s) number of shifts where 1 < m < 16 number of shifts where 1 41 electrical characteristics v dd = 5.0v 10%; -55 c < t c < +125 c notes: 1. supplied as a design limit but not guaranteed or tested. 2. not more than one output may be shorted at a time for maximum duration of one second . 3. all inputs with internal pull-ups or pull-downs should be left open circuit, all other inputs tied low or high. test input pin asserted. 4. includes current through input pull-ups. instantaneous surge currents on the order of 1 ampere can occur during output switch ing. voltage supply should be adequately sized and decoupled to handle a large current surge. 5. double buffer output pins (i.e., ds , r/ wr , m/ io , op/ i , as ). 6. functional tests are conducted in accordance with mil-std-883 with the following input test conditions: v ih = v ih (min) + 20%, -0%; v il = v il (max) +0%, -50%, as specified herein, for ttl and cmos compatible inputs. devices may be tested using any input voltage within the above sp ecified range, but are guar- anteed to v ih (min) and v il (max). 7. radiation-hardened technology shall have a v ih pre-irradiation of 2.2v. symbol parameter condition minimum maximum unit v il 6 low-level input voltage osc inputs ttl inputs 1.2 0.8 v v v ih 6,7 high-level input voltage osc inputs ttl inputs 3.6 2. 0 v v i in input leakage current in puts without resisters inputs with pull-down resistors inputs with pull-up resistors v in = v dd or v ss v in = v dd v in = v ss -1 0 80 - 900 1 0 900 -80 m a m a m a v ol low-level output voltage ttl outputs osc o utputs i ol = 3.2ma i ol = 6.4ma note 5 i ol = 100 m a 0.4 0.4 1.0 v v v v oh high-level output voltage ttl outputs osc o utputs i oh = -400 m a i oh = -800 m a note 5 i oh = -100 m a 2.4 2.4 3.5 v v v i oz three-state output leakage current v o = v dd or v ss -10 -20 note 5 +10 +20 note 5 m a m a i os 1,2 short-circuit output current v dd = 5.5v, v o = 0v to v dd -100 -200 note 5 +100 +200 note 5 ma ma c in input capacitance f = 1mhz @ 0v 10 pf c out output capacitance f = 1mhz @ 0v 15 pf c io bidirectional i/o capacitance f = 1mhz @ 0v 20 pf i dd 1, 4 average operating current f = 12mhz, c l = 50pf f = 16mhz, c l = 50p 50 75 ma q idd quiescent current note 3 1 ma
42 figure 33a. typical timing measurements to data valid to high z to response to response to response input input input input input input input to high z to data valid to response input parameter h g f e d c b a t t t t t t t t symbol h g f e t t t t d b t t t c a t bus output out-of-phase output in-phase max il v min ih v input max ol v max ol v ol v min oh v min oh v min oh v max il v min ih v max *unless otherwise noted, all ac electrical characteristics are guaranteed by design or characterization. note: 50pf including scope probe and test socket. 90% figure 33b. ac test loads and input waveforms input pulses 10% 10% 90% < 2 ns < 2 ns 50 pf 3 v 0 v 5 v i ref (source) i ref (sink) v ref
43 41 45 40 53 41 38 55 42 38 41 38 38 35 45 38 38 42 33 -- 0 -- 0 0 -- 0 -- 0 -- 0 0 0 -- 0 0 0 0 ns ns ns ns ns ns ns ns ns ns ns ns ns ns ns ns ns ns ns 33 0 figure 34. i/o read cycle note: -- -- 0 26 oscin high to address invalid oscin low to address valid t34u t34t t34s t34r t34q t34p t34o t34n t34m t34l t34j t34i t34k t34h t34g t34f t34e t34d t34c t34b t34a valid data valid address oscin state1 as ds r/wr m/io op/in operand data operand address symbol parameter min max units t34a t34b t34c oscin low to state1 high oscin low to state1 low oscin low to as active oscin high to as inactive oscin low to as high z oscin low to ds inactive oscin low to ds active oscin high to ds inactive oscin low to ds high z oscin low to r/wr active oscin low to r/wr high z oscin low to m/io low oscin high to m/io high oscin low to m/io high z oscin low to op/in high oscin high to op/in low oscin low to op/in high z data setup time data hold time t34d t34e t34f t34g t34h t34i t34j t34k t34l t34m t34n t34o t34p t34q t34r t34s t34t t34u ns ns * * * * * * *guaranteed by test. * * * * * * * 16 mhz 55 57 53 71 54 50 73 51 50 54 50 50 37 54 50 50 51 39 -- 0 -- 0 0 -- 0 -- 0 -- 0 0 0 -- 0 0 0 0 42 0 -- -- 0 34 min max 12 mhz
44 41 45 40 53 41 38 55 42 38 42 38 38 35 45 38 38 42 33 -- 0 -- 0 0 -- 0 -- 0 -- 0 0 0 -- 0 0 0 0 ns ns ns ns ns ns ns ns ns ns ns ns ns ns ns ns ns ns ns 33 0 figure 35. i/o w rite cycle note: 60 48 0 -- oscin high to address invalid oscin low to address valid t35u t35t t35s t35r t35q t35p t35o t35n t35m t35l t35j t35i t35k t35h t35g t35f t35e t35d t35c t35b t35a valid address oscin state1 as ds r/wr m/io op/in operand data operand address t35a t35b t35c oscin low to state1 high oscin low to state1 low oscin low to as active oscin high to as inactive oscin low to as high z oscin low to ds inactive oscin low to ds active oscin high to ds inactive oscin low to ds high z oscin low to r/wr active oscin low to r/wr high z oscin low to m/io low oscin high to m/io high oscin low to m/io high z oscin low to op/in high oscin high to op/in low oscin low to op/in high z oscin low to data valid oscin high to data invalid (high z) t35d t35e t35f t35g t35h t35i t35j t35k t35l t35m t35n t35o t35p t35q t35r t35s t35t t35u 54 0 oscin high to r/wr high t35v t35v ns ns ns valid data *guaranteed by test. * * * * * * * * * * * * * * * symbol parameter min max units 16 mhz min max 12 mhz 55 57 53 71 54 50 73 51 50 51 50 50 37 54 50 50 51 39 -- 0 -- 0 0 -- 0 -- 0 -- 0 0 0 -- 0 0 0 0 42 0 80 64 0 -- 72 0
45 41 45 40 53 41 38 42 38 42 38 38 35 45 38 38 42 33 -- 0 -- 0 0 -- 0 -- 0 -- 0 0 0 -- 0 0 0 ns ns ns ns ns ns ns ns ns ns ns ns ns ns ns ns ns ns 33 0 figure 36. mem read cycle note: -- -- 0 26 oscin high to address invalid oscin low to address valid t36u t36t t36s t36r t36q t36p t36o t36n t36l t36j t36i t36k t36h t36g t36f t36e t36d t36c t36b t36a valid data valid address oscin state1 as ds r/wr m/io op/in operand data operand address t36a t36b t36c oscin low to state1 high oscin low to state1 low oscin low to as active oscin high to as inactive oscin low to as high z oscin low to ds inactive oscin low to ds active oscin high to ds inactive oscin low to ds high z * oscin low to r/wr active oscin low to r/wr high z oscin low to m/io high oscin low to m/io high z oscin low to op/in high oscin high to op/in low oscin low to op/in high z data setup time data hold time t36d t36e t36f t36g t36h t36i t36j t36k t36l t36n t36o t36p t36q t36r t36s t36t t36u *guaranteed by test. ns ns * * * * * * * * * * * symbol parameter min max units 16 mhz min max 12 mhz 55 57 53 71 54 50 53 50 54 50 50 37 54 50 50 51 39 -- 0 -- 0 0 -- 0 -- 0 -- 0 0 0 -- 0 0 0 42 0 -- -- 0 34
46 41 45 40 53 41 38 42 38 42 38 38 35 45 38 38 42 33 -- 0 -- 0 0 -- 0 -- 0 -- 0 0 0 -- 0 0 0 ns ns ns ns ns ns ns ns ns ns ns ns ns ns ns ns ns ns 33 0 figure 37. mem write cycle note: 60 48 0 -- oscin high to address invalid oscin low to address valid t37u t37t t37s t37r t37q t37p t37o t37n t37l t37j t37i t37k t37h t37g t37f t37e t37d t37c t37b t37a valid address oscin state1 as ds r/wr m/io op/in operand data operand address t37a t37b t37c oscin low to state1 high oscin low to state1 low oscin low to as active oscin high to as inactive oscin low to as high z oscin low to ds inactive oscin low to ds active oscin high to ds inactive oscin low to ds high z * oscin low to r/wr active oscin low to r/wr high z oscin low to m/io high oscin low to m/io high z oscin low to op/in high oscin high to op/in low oscin low to op/in high z oscin low to data valid oscin high to data invalid (high z) t37d t37e t37f t37g t37h t37i t37j t37k t37l t37n t37o t37p t37q t37r t37s t37t t37u 54 0 oscin high to r/wr high t37v t37v ns ns ns valid data *guaranteed by test. * * * * * * * * * * * * * symbol parameter min max units 16 mhz min max 12 mhz 55 57 53 71 54 50 53 50 51 50 50 37 54 50 50 51 39 -- 0 -- 0 0 -- 0 -- 0 -- 0 0 0 -- 0 0 0 42 0 80 64 0 -- 72 0
47 33 0 ns figure 38. dma no wait state oscin low to state1 high notes: t38a oscin low to state1 low oscin high to brq low oscin low to brq high bg n t setup time bg n t hold time oscin low to bgack active oscin low to bgack high z dtack setup time dtack hold time busy setup time busy hold time 0 0 0 15 0 0 -- 10 0 10 10 33 41 44 -- -- 42 41 -- -- -- -- ns ns ns ns ns ns ns ns ns ns ns 1. bgt must be active and busy high at this clock edge or wait states will occur. 2. to avoid wait states, dtack must be active here. must have dtack active here must have bg n t active here as ds r/wr m/io op/in operand data operand address 1 2 for no wait states for no wait states valid data valid address t38b t38c t38d t38e t38f t38g t38h t38i t38j t38k t38l *guaranteed by test. * * * * * symbol parameter min max units 16 mhz min max 12 mhz 42 0 0 0 0 15 0 0 -- 10 0 15 10 39 54 58 -- -- 53 55 -- -- -- -- oscin t38a t38b t38c t38d t38g t38h t38i t38j t38l t38e state1 t38f t38k dtack bgack bgnt brq busy
48 ns ns ns ns ns ns ns ns ns ns t39j t39h t39g t39f t39e t39d t39c t39b t39a valid data valid address data instruction address instruction figure 3 9. stri c ommand, risc write timing oscin t39a 0 0 0 0 0 0 0 -- -- -- 33 33 39 37 40 37 49 38 41 39 t39i note: t39b t39c t39d t39e t39f t39g t39h t39i t39j * *guaranteed by test. * * * * * * symbol parameter min max units 16 mhz min max 12 mhz 0 0 0 0 0 0 0 -- -- -- 39 42 52 46 50 49 65 50 55 52 state1 oe we oscin low to state1 low oscin low to state1 high oscin high to oe high oscin high to we low oscin low to address valid oscin low to oe low oscin high to we high oscin low to address high z oscin high to data valid oscin low to data high z
49 ns ns ns ns ns ns ns ns ns ns figure 40. lri command risc read t iming t40a 0 20 -- -- 0 0 0 0 0 0 0 -- 33 33 35 39 37 35 49 38 t40j t40i t40h t40g t40f t40e t40d t40c t40b t40a valid data valid address data instruction address instruction oscin t40b t40c t40d t40e t40f t40g t40h t40i t40j *guaranteed by test. note: * * * symbol parameter min max units 16 mhz min max 12 mhz 0 27 -- -- 0 0 0 0 0 0 0 -- 39 42 46 52 49 47 65 50 oscin low to state1 low oscin low to state1 high oscin high to oe low oscin high to we high oscin low to address valid oscin low to oe high oscin low to we low oscin low to address high z data setup time data hold time state1 oe we
50 figure 41. uart and timer a/b timclk timing t41b t41a ns ns timclk high time timclk low time t41b t41a timclk 24 -- -- 38 symbol parameter min max units 16 mhz min max 12 mhz 32 -- -- 50 mrst pulse width t 62 ns t figure 41a. master reset timing 83 ns t t 42a 42a 42b 42b symbol parameter min max units 16 mhz min max 12 mhz symbol parameter min max units 16 mhz min max 12 mhz 62 83 -- -- -- -- mrst mrst test mrst timing with test active figure 41b. master reset timing when test is active
51 latchup test configuration figure 43 shows the latchup test. v dd holds at +5.5 v dc , and v ss holds at ground. the device test is at 125 c. each type of i/o alternately receives a positive and then negative 150 ma pulse of 500 ms duration. the current is monitored after the pulse for latchup condition. to prevent burnout, the supply current is limited to 400 ma. the ut1750ar has latchup immunity in excess of +150 ma for 500 ms. 500ms 500ms 150ma 0 -150ma pulse generator current meter power supply input or output gnd dut v dd figure 43. latchup test
52 figure 44. 144-pin pingrid array notes: 1. package material: opaque ceramic. 2. true position applies at base plane (datum c). 3. true position applies at pin tips (datum c1). 4. all package finishes are per mil-prf-38535. 5. letter designations are for cross-reference mil-std-1835. 6. geometry of index mark cannot be an alpha or numeric symbol. 7. all v dd pads are connected to the power plane, die-attach, pad and external pins h3, n9, g13, and c7. 8. all v ss pads are connected to the power plane, die-attach, pad and external pins j3, n8, h13, and c8. pin usage: pga 116 - i/o 8 - power/ground 23 - no connect (b13, c2, n14, p3, r1, d3, m13, a15, e1, a1, l2, n4, r5, b5, p11, a11, c12, e14, r15, l15)
53 notes: 1. all package finishes are per mil-prf-38510. 2. lead numbers 34, 67, 100, 132 are connected to the v dd plane. other leads can be used for v dd connections. 3. lead numbers 33, 66, 99, 1 are connected to the v ss plane. other leads canbe used for v ss connections. 4. the lid is connected to v ss. 5. letter designations are for cross-reference to mil-std-38510. figure 45. 132-lead flatpack (unformed leads) pin usage: fltpk 116 - i/o 8 - power/ground 8 - no connect (2, 32, 35, 65, 68, 98, 101, 131)
54 ordering information 1750ar risc microprocessor lead finish: (a) = solder (c) = gold (x) = optional screening: (p) = prototype (c) = mil temp package type: (g) = 144-pin cpga (w) = 132-pin qfp (gold only) access time: (12) = 12mhz operating frequency (16) = 16mhz operating frequency utmc core part number ut1750ar * * * * notes: 1. lead finish (a, c, or x) must be specified. 2. if an ?x? is specified when ordering, part marking will match the lead finish and will be either ?a? (solder) or ?c? (gold). 3. mil temp range flow per utmc?s manufacturing flows document. devices are tested at -55c, room temp, and 125c. radiation neith er tested nor guaranteed. 4. prototype flow per utmc?s document manufacturing flows and are tested at 25c only. lead finish is gold only. radiation neithe r tested nor guarateed.
55 1750 risc microcontroller: smd lead finish: (a) = solder (c) = gold (x) = optional case outline: (x) = 144-pin pga (y) = 132-pin qfp (gold only) class designator: (q) = class q (v) = class v device type (01) = 12 mhz, rh microcontroller (02) = 16 mhz, rh microcontroller drawing number: 01502 total dose: ( - ) = none (h) = 1e6 rads(si) (g) = 5e5 rads(si) (f) = 3e5 rads(si) (r) = 1e5 rads(si) federal stock class designator: no options 5962 * 01502 01 * * * notes: 1. lead finish (a, c, or x) must be specified. 2. if an ?x? is specified when ordering, part number will match the lead finish and will be either ?a? (solder) or ?c? (gold). 3. 132 fp (package designator "y") only available with gold lead finish.


▲Up To Search▲   

 
Price & Availability of 5962F0150201QXA

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X